Title: Angular / Modules

Q: Which file defines the main module of the angular application?::
A: `app.module.ts`

Q: What is the main module of angular called?::
A: `AppModule`

Q: In which file will you find `AppModule`?::
A: `app.module.ts`

Q: What is the double curly braces syntax called?::
A: interpolation

Q: What are decorators?::
A: Allows us to add metadata to class declarations.

Q: How can you recognize a decorator?::
A: The @ prefix.

Q: How many types of decorators are there?::
A: - Class decorators
- Property decorators
-  Method decorators
-  Parameter decorators

Q: When does the class decorator execute?::
A: The decorator statement is executed before the class gets instantiated.

Q: Which feature does the `BrowserModule` provide to an angular application?::
A: It allows an angular application to run in the browser.

Q: What properties does `NgModule` accept?::
A: - declarations
-  imports
-  providers
-  bootstrap

Q: Which angular artifacts can be added to the declarations collection of `NgModule`?::
A: Components, directives, and pipes.

Q: What does the imports property of `NgModule` contain?::
A: Other modules and standalone components, directives and pipes.

Q: What does the providers property of `NgModule` contain?::
A: Services

Q: What does the bootstrap property of `AppModule` define?::
A: The component that loads on startup.

Q: What are feature modules?::
A: Modules that represent specific features of the application.

Q: What features does the `CommonModule` provide to an angular application?::
A: It provides the template syntax features to an angular application.

Q: What is the cli command to generate a module?::
A: `ng generate module module-name`

Q: How do you expose components from an Angular module?::
A: Using the exports array of `NgModule`

Q: What features does the `HttpClientModule` provide an angular application?::
A: It provides features that enable http communication.

Q: What is the `RouterModule`?::
A: Module that enables navigation in an Angular application.

Q: What features does the `BrowserAnimationsModule` provide to an angular application?::
A: It provides features that enable UI animations in an Angular application.