Skip to content

Angular Foundations

Angular Foundations picks up where TypeScript Foundations left off. You can write typed, structured JavaScript. Now you will use that foundation to build modern, production-quality single-page applications with Angular.

Every concept in this course is applied directly to CinemaVault — a movie catalog SPA powered by the TMDb API that you build from scratch and ship as a fully deployed app by the final module.

  • Angular fundamentals — what Angular is, how the CLI works, and how the framework renders your app
  • Components — the @Component decorator, templates, @Input and @Output, lifecycle hooks, and the standalone component model
  • Templates and data binding — interpolation, property binding, event binding, @if/@for control flow, and pipes
  • Routing — client-side navigation, RouterOutlet, RouterLink, route parameters, and route guards with side effects
  • Services and dependency injection@Injectable, the DI system, singleton services, shared signal state, and inject()
  • Reactive forms and HTTPFormGroup, FormControl, validators, HttpClient, and key RxJS operators

This course assumes you have completed TypeScript Foundations or have equivalent knowledge. You should be comfortable with TypeScript types, interfaces, classes, generics, and async/await. No prior Angular experience is assumed.

All seven modules build the same real application — CinemaVault, a movie catalog SPA powered by the TMDb API. You can explore the live app or browse the source on GitHub.

The finished app:

  • Fetches live movie data from the TMDb API and types every response with TypeScript interfaces
  • Shows trending and popular movies on the Home page
  • Lets you filter movies by genre, year, and sort order on the Browse page
  • Searches movies with a reactive form that debounces API calls
  • Shows full movie details including cast on a dedicated Movie Detail page
  • Lets you save movies to a Watchlist that persists across sessions via localStorage
  • Protects the Watchlist route with a guard that shows a toast notification when empty

By Module 07 you will wire all of these pieces together into a working, deployed Angular app.