Architecture overview

The fundamental building blocks of an Angular apps are NgModules.
NgModules provides a compilation context for components
NgModules collect related code into functional sets.
Angular app is structured by a set of NgModules. 
An app always has at least a root module that enables bootstrapping of app, 
and typically it has many more feature modules.

Mainly Angular App consist of followings:
  • NgModules
  • Components
  • Template
  • Services
  • Routing
  • Depedency Injections

Ref: angular.io