Overview
NestJS is a framework for building server-side applications in TypeScript on Node.js. It borrows its architecture from Angular: code is organised into modules, controllers handle requests, providers hold business logic, and a dependency injection container wires them together. Decorators describe routes, guards, pipes and interceptors.
Under the hood Nest uses Express by default and can switch to Fastify, so existing middleware and plugins remain usable. First-party packages cover GraphQL, WebSockets, microservice architectures, OpenAPI documentation and testing, which is why it is popular with larger teams that want a consistent structure.
The project began in 2017 and is led by its author Kamil Mysliwiec with a core team, funded by sponsors and by the team's commercial products. Those include Devtools (an interactive graph of your app's modules and dependencies, a code playground and CI checks), Mau (a deployment platform that provisions Nest apps, databases and brokers into your AWS account from $12 a month plus AWS costs), official courses and enterprise support.
The framework itself is MIT licensed and none of the paid products are required.
Pricing and plans
| Plan | Price | What you get |
|---|---|---|
| Framework | Free | MIT licensed |
| Mau Developer | $12/mo | One application, one database, 100 deployments/day; AWS costs extra; 7-day trial |
| Mau Professional | $19/mo | One project, unlimited applications and databases; shown as $25/mo with a permanent discount |
| Mau Business | $35/mo | Unlimited projects; shown as $70/mo with a permanent discount |
| Enterprise support | Custom | Architecture reviews, LTS and upgrade help, team augmentation |
What it does
- Modules and DI
- Self-contained modules with a built-in dependency injection container.
- Express or Fastify
- Choose the HTTP platform; Express is the default.
- GraphQL and WebSockets
- Official packages for GraphQL APIs and WebSocket gateways.
- Microservices
- Built-in support for message-based microservice architectures.
- Devtools
- Paid tool that graphs modules and dependencies and checks them in CI.
- Mau deployment
- Paid platform from the Nest team that provisions apps, databases and brokers in your AWS account.
Strengths and limitations
Strengths
- Consistent architecture that scales to large teams
- Wide set of official packages for common back-end needs
- Can use Fastify for better throughput
- Commercial support available from the core team
Limitations
- More boilerplate (modules, providers, decorators) than minimal frameworks
- Relies on TypeScript decorators, a pattern some teams avoid
- Node.js only; not designed for edge runtimes
- No built-in ORM; you integrate TypeORM, Prisma, MikroORM or another library
Who it suits
Good for
- Teams coming from Angular, Spring or .NET
- Large TypeScript back ends and microservices
- Enterprises wanting vendor support for a Node framework
Look elsewhere if
- Small APIs or edge functions where minimal frameworks fit better
- Developers who dislike decorator-heavy code
Alternatives to NestJS
| Tool | From | Free option | Stages |
|---|---|---|---|
| FastAPI Python API framework | $20/mo | Free tier | |
| Laravel Batteries-included PHP framework | $5/mo | ||
| Encore Backend framework with infrastructure from code | $49/mo | Free tier | |
| Fastify High-performance Node.js web framework | — | ||
| Django Batteries-included Python web framework | — | ||
| Actix Web Rust web framework | — |
Questions
Is NestJS free?
Yes, the framework is MIT licensed. The team sells optional Devtools, the Mau deployment platform, courses and support.
Does NestJS use Express?
By default yes; it can run on Fastify instead.
Does NestJS include an ORM?
No. You integrate an ORM such as TypeORM, Prisma or MikroORM.
What is NestJS Mau?
A paid platform by the Nest team that deploys Nest apps to your own AWS account, from $12/month plus AWS costs.
Sources read for this page