Updated June 2026 Mastering Angular is a comprehensive course on modern Angular 22 and the signal-first era it completes. The course centers on Signals — Angular's signal-based reactivity primitive that, paired with zoneless change detection (the default for new projects since Angular 21, now in LTS), changes how components are written, tested, and reasoned about. Participants build standalone-component applications using the built-in control-flow blocks ( All students receive comprehensive courseware covering all topics in the course. Courseware is distributed via GitHub in the form of documentation and extensive code samples. Students practice the topics covered through challenging hands-on lab exercises. Students will need a free, personal GitHub account to access the courseware. Students will need permission to install Node.js and Visual Studio Code on their computers. Also, students will need permission to install NPM Packages and Visual Studio Code extensions. If students are unable to configure a local environment, a cloud-based environment can be provided.Mastering Angular
Class Duration
Target Audience
Description
@if, @for, @switch, @defer), the function-based inject() pattern, signal inputs (input()), signal queries (viewChild(), viewChildren()), and the modern output() API. Coverage includes the stable Signal Forms API alongside typed reactive forms, the modern provideHttpClient API with signal-friendly patterns, the standalone Router with functional guards, signal-based state management, deferrable views, and unit testing with Vitest (the Angular 22 default test runner) plus end-to-end testing with Playwright. Legacy NgModule, *ngIf/*ngFor, and zone.js patterns are covered briefly so participants can read older code, but every new pattern taught is the current Angular 22 idiom.Learning Objectives
@if, @for, @switch, @defer) and understand why they replace the structural directives.signal(), computed(), effect() — plus signal inputs, queries, and outputs.provideHttpClient, signals + toSignal, and modern HttpInterceptor functions.@defer) for code-splitting and progressive loading.NgModule-based codebases and migrate selectively to standalone components and signals.Training Materials
Software Requirements
Training Topics
Introduction to Angular 22
Angular CLI
ng new with modern defaultsBootstrapping
bootstrapApplication() and the standalone bootstrap pathprovideRouter, provideHttpClient, etc.)provideZonelessChangeDetection() for migrating older appsindex.htmlComponent Templates and Control Flow
@if / @else if / @else, @for with track, @switch@defer blocks: triggers, placeholders, and prefetching@let template variablesclass.x and style.x bindings, ngClass / ngStyle*ngIf / *ngFor / *ngSwitch codebasesComponents
inject()input(), input.required())output())viewChild(), viewChildren(), contentChild())effect()Forms
FormGroup<T>, FormControl<T>)Signals
signal(), computed(), effect() — when to use whichtoSignal and toObservable for RxJS interopHTTP Data
provideHttpClient() with withFetch() and withInterceptors()HttpInterceptor (replacing class-based interceptors)toSignal(observable$) for binding HTTP data to signal-based templatesPipes
date, currency, json, etc.)Routing
provideRouter)CanMatchFn, CanActivateFn) — the modern replacement for class-based guardswithComponentInputBinding() and route-data → signal-input bindingTesting and Deploying to Production
HttpTestingController and HTTP mocking