Angular Architecture

March 18, 2024 ยท View on GitHub

This code sample demonstrates different Angular Architecture concepts. It's used in the Angular Architecture and Best Practices video course on Pluralsight (https://www.pluralsight.com/courses/angular-architecture-best-practices) and in the Angular Architecture and Best Practices instructor-led training course (https://codewithdan.com/products/angular-architecture).

Running the Application

  1. Install the Angular CLI: npm install -g @angular/cli

  2. Open the demos folder and run npm install

  3. Run ng serve -o in the demos folder to start the server and launch the app

Main Demos

NameDescription
CommunicationShow services and subjects to provide communication for components.
Component Inheritanceinheriting components
Features ModulesExample structure with NgModules
Http Client RxJSRxJS to combine results with operators
Pipes and FunctionsPipes
PlanningPlanning tips for your app
SignalsSimple Signals demo
Structuring ComponentsComponent presentation with change detection
SubjectsSimple use of each Subject type
View ModelsProgressive examples of where view models are useful

Additional Demos

NameDescription
CloningRun the project in the cloning folder
Input/Output PropertiesRun the project in the input-output-demo project
Shared LibraryRun the project in the shared-library-example project
State ManagementOpen the state-management folder and run any of the demos
State - DIY StoreOpen the state-management/diy-store folder and start here with a simple "do it yourself" store with subjects and observables
State - NgRxOpen the state-management/ngrx folder
State - ngrx-dataOpen the state-management/ngrx-data folder
State - Observable StoreOpen the state-management/observable-store folder Observable Store library

The Angular JumpStart Application

You can find an example of an application that follows the rules in this course at https://github.com/DanWahlin/Angular-JumpStart