A progressive Node.js framework for building efficient and scalable server-side applications.
Nest is a TypeScript framework for building backends on Node.js, from a small API in one file to a large system with many teams. It gives an application modules, dependency injection, and one place each for validation, authentication and error handling, so a project keeps its shape as it grows.
It runs on Express, Fastify or Node's own node:http, and its first-party packages cover most of what a backend needs, so you can start small and add them as you go.
npx @nestjs/cli new my-api --package-manager npm
cd my-api
npm run start:devAn application can also be a single file. This can replace src/main.ts, and npx tsx src/main.ts runs it with no build step:
import { Controller, Get, Module } from '@nestjs/common';
import { NestFactory } from '@nestjs/core';
@Controller()
class AppController {
@Get()
hello() {
return 'Hello, Nest!';
}
}
@Module({ controllers: [AppController] })
class AppModule {}
const app = await NestFactory.create(AppModule);
await app.listen(3000);| What you need | Package |
|---|---|
| Language models, tools as provider methods, agents, streaming to the browser | @nestjs/ai |
| MCP servers | @nestjs/mcp |
| Sign-in, sessions, tokens, two-factor, API keys | @nestjs/authentication |
| Permissions | @nestjs/authorization |
@nestjs/mail |
|
| Files, S3 included | @nestjs/storage |
| Translations | @nestjs/i18n |
| Databases | @nestjs/typeorm, @nestjs/drizzle, @nestjs/mongoose, @nestjs/sequelize |
| Retries, timeouts, circuit breakers | @nestjs/resilience |
| Idempotency keys | @nestjs/idempotency |
| Transactional outbox | @nestjs/outbox |
| Webhooks, sending and receiving | @nestjs/webhooks |
| Running a job on one instance, locks | @nestjs/locks |
| Processes that take days | @nestjs/workflows |
| Queues and scheduled jobs | @nestjs/bullmq, @nestjs/schedule |
| GraphQL, WebSockets, microservices | GraphQL, gateways, microservices |
| OpenAPI | @nestjs/swagger |
| Configuration, caching, rate limiting, health checks | @nestjs/config, @nestjs/cache-manager, @nestjs/throttler, @nestjs/terminus |
- From Express, one route at a time or all at once.
- From Fastify, keeping your plugins.
- As the backend of a Next.js app, moving route handlers across one by one.
The whole documentation is available as markdown, with an index at docs.nestjs.com/llms.txt. Projects from nest new come with an AGENTS.md that lists the packages above, since most models were trained before they existed.
In recent years, thanks to Node.js, JavaScript has become the โlingua francaโ of the web for both front-end and back-end applications, giving rise to awesome projects like Angular, React, and Vue, which improve developer productivity and enable the construction of fast, testable, and extensible frontend applications. However, on the server-side, while there are a lot of superb libraries, helpers, and tools for Node, none of them effectively solve the main problem - the architecture.
Nest aims to provide an application architecture out of the box which allows for effortless creation of highly testable, scalable, and loosely coupled and easily maintainable applications. The architecture is heavily inspired by Angular.
- To check out the guide, visit docs.nestjs.com. ๐
- ่ฆๆฅ็ไธญๆ ๆๅ, ่ฏท่ฎฟ้ฎ docs.nestjs.cn. ๐
- ๊ฐ์ด๋ ๋ฌธ์๋ docs.nestjs.com์์ ํ์ธํ์ค ์ ์์ต๋๋ค. ๐
- ใฌใคใใฏ docs.nestjs.comใงใ็ขบ่ชใใ ใใใ ๐
For questions and support please use the official Discord channel. The issue list of this repo is exclusively for bug reports and feature requests.
Please make sure to read the Issue Reporting Checklist before opening an issue. Issues not conforming to the guidelines may be closed immediately.
NestJS Observe is the official observability platform for Nest applications. Install the @nestjs/observe SDK, pass an API key, and requests, background jobs, errors, logs, and distributed traces start streaming to a dashboard - no manual span wiring and no collector to run. Because the SDK hooks into Nest's own request lifecycle, a trace reads like a call graph of your controllers and providers instead of a bare HTTP route. Free for up to 300,000 events a month, and there is a live demo with no signup.
With official support, you can get expert help straight from the Nest core team. We provide dedicated technical support, migration strategies, advice on best practices (and design decisions), PR reviews, and team augmentation. Read more about support here.
Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support from the amazing backers. If you'd like to join them, please read more here.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|||
![]() |
![]() |
![]() |
![]() |
||
![]() |
- Author - Kamil Myลliwiec
- Website - https://nestjs.com
- X - @nestframework
Nest is MIT licensed.










