A Minimal, Unopinionated Node Web Framework
What is Express?
Express is the most-used Node web framework. A thin layer on top of node:http with routing, middleware, and helpers.
What you'll learn
- Know what Express is and isn't
- Place it next to Fastify, NestJS, Hono
- Know the version landscape
Express is a small, unopinionated web framework for Node.js. It
adds three big things on top of the built-in node:http module:
- Routing —
app.get("/users/:id", handler) - Middleware — a chain of functions every request flows through
- Helpers —
res.json(),res.redirect(),req.params, etc.
That’s basically it. The reason it dominates the Node ecosystem is not feature count — it’s minimalism. Express stays out of your way and lets you build APIs or full-stack apps your own way.
What You’ll Build
By the end of this track, you’ll be comfortable:
- Routing complex URLs (params, regex, nested resources)
- Composing middleware for auth, validation, logging
- Building REST APIs that follow real-world conventions
- Adding sessions, JWT, Passport — picking the right auth model
- Integrating databases, file uploads, WebSockets
- Testing, logging, monitoring, deploying
Why Express, Why Now
Despite being 14+ years old, Express is still the default for Node web apps. Reasons:
- Tiny core, huge ecosystem
- Stable API — code from 2018 still works
- Express 5 added async error handling and modern routing without breaking everything
- Most Node tutorials, Stack Overflow answers, and job postings assume it
Alternatives worth knowing:
| Framework | Pitch |
|---|---|
| Fastify | Faster, schema-driven, modern API |
| NestJS | Opinionated, decorator-based, TypeScript-first |
| Hono | Tiny, web-standards-first, runs on edge runtimes |
| Koa | Express’s spiritual successor, smaller core |
We touch these at the end. For ~80% of Node jobs and projects in the wild, Express is what you’ll use.
What This Track Assumes
- You can write modern JavaScript (let, const, async/await, modules)
- You’ve installed Node 20+ and run a script
If not, the JavaScript and Node.js tracks come first.
Up Next
Install Express and ship a working server.
Installing Express →