Skip to content

NestJS, a 10-part series

Who this series is for

  • Express users who want structure: you’ve shipped REST APIs but find yourself re-inventing dependency injection, middleware ordering, and project layout on every project.
  • Angular developers moving to the backend: NestJS borrows Angular’s decorator-based DI model deliberately. The mental model transfers well.
  • Engineers preparing for Node.js backend interviews: Parts 2 (DI), 5 (auth), and 9 (microservices) cover the topics that come up most.

Each part is self-contained enough to read on its own, but later parts assume the primitives introduced in earlier ones.

The parts

  1. Part 1: Architecture and setup (beginner)
  2. Part 2: Dependency injection (beginner)
  3. Part 3: REST controllers (beginner)
  4. Part 4: Database with TypeORM (beginner to intermediate)
  5. Part 5: Auth and guards (intermediate)
  6. Part 6: Validation and pipes (intermediate)
  7. Part 7: Interceptors and filters (intermediate)
  8. Part 8: WebSockets (advanced)
  9. Part 9: Microservices (advanced)
  10. Part 10: Testing and production (expert)

Versions this series targets

  • NestJS 11
  • TypeScript 5.x
  • Node.js 22 LTS
  • TypeORM 0.3.x
  • Jest 29

NestJS 11 introduced standalone application improvements and tighter ESM support. Where behavior differs from NestJS 9/10-era articles you’ll find on the web, this series flags it inline.

How I’d actually learn NestJS today

  1. Build a toy CRUD API through Parts 1-4.
  2. Add JWT auth (Part 5) and request validation (Part 6).
  3. Read Parts 7 and 8 when you need real-time features or want to understand the request pipeline deeply.
  4. Read Parts 9 and 10 before you split services or deploy, not after.

References that apply to every part