Express Intro
What Express Is in Production
Express is a thin layer on top of Node's HTTP server. It provides routing and middleware composition, but it does not enforce architecture. In production, Express is successful when you add explicit boundaries: validation, error handling, logging, timeouts, and security headers.
When Express Is a Good Fit
Express is ideal for APIs, internal services, lightweight web apps, and gateways where you need control without heavy framework conventions. If you need strict modular structure out of the box, consider layering your own modules (routes, services, repositories) instead of expecting Express to provide them.
Core Mental Model
Every request flows through a chain of middleware functions. Each middleware can read/modify the request, produce a response, or delegate to the next middleware. This composition model is powerful but can become unmaintainable without conventions.
Production Baseline
- Centralized error handling (one consistent error shape)
- Request validation at the boundary (never trust input)
- Structured logging with request IDs
- Security defaults: helmet, CORS policy, rate limiting
- Safe async patterns (no unhandled promise rejections)