Angular from Zero - The Full-Framework Deal
Angular's reputation runs a decade behind its reality. The framework people warn you about -
NgModules everywhere, boilerplate for a hello world, RxJS required to display a number - is the
old Angular. The current one boots from a single standalone component, manages state with signals
that look a lot like Vue and Svelte's reactivity, and writes conditionals as readable @if blocks.
It's still the most opinionated of the big frameworks - that's its actual identity, not a flaw:
Angular is the one that ships the whole application architecture in the box, TypeScript-first,
with a CLI that generates the pieces.
This guide teaches that modern core - and, because you will inherit older Angular at work, flags the legacy dialect at every point where the two differ.
How to read this
- In a panic right now? Jump to Phase 7: When Angular Breaks - the cheat-card decodes the NG-numbered errors.
- Want it to finally make sense? Read in order. Signals (phase 3) and dependency injection (phase 5) are the two load-bearing ideas.
The phases
- What Angular Actually Is - a framework, not a library: what's in the box and what the CLI does.
- Components and Templates -
@Component, bindings with[ ]and( ), and the@if/@forcontrol flow. - Signals -
signal,computed, and how modern Angular knows what changed. - Component Inputs and Outputs -
input(),output(), andmodel()for two-way. - Services and Dependency Injection - Angular's answer to shared state and shared logic.
- HTTP and Just Enough RxJS -
HttpClient, observables without drowning, andtoSignal. - When Angular Breaks - NG-numbered errors, missing imports, and signal mistakes, decoded.
- Where to Go Next - Router, forms, RxJS depth, and what to defer.
Deliberately deferred to follow-up guides: the Router in depth, reactive forms, NgRx and signal stores, SSR/hydration, testing, and RxJS beyond survival level. Core model first.