An SSE client whose stream is backed up is dropped once more event data waits for it than the route's "maxPendingDataLength" allows. The limit was only checked when the producer emitted an event. A producer that emits many events at once, synchronously (e.g. replaying past events before live ones), emits them all before the first write can back the stream up, and none after, so they waited in memory for a client that never read them, past the limit. The limit is now also checked after each write, once the stream is backed up. A route that sends more than its limit at once, to a client that reads slower than the events are written, now drops that client as well, as the limit describes. Such a route can raise or lift it.
A progressive Node.js framework for building efficient and scalable server-side applications.
Description
Nest is a framework for building efficient, scalable Node.js server-side applications. It uses modern JavaScript, is built with TypeScript (preserves compatibility with pure JavaScript) and combines elements of OOP (Object Oriented Programming), FP (Functional Programming), and FRP (Functional Reactive Programming).
Under the hood, Nest makes use of Express, but also provides compatibility with a wide range of other libraries, like Fastify, allowing for easy use of the myriad of third-party plugins which are available.
Philosophy
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.
Getting started
- To check out the guide, visit docs.nestjs.com. 📚
- 要查看中文 指南, 请访问 docs.nestjs.cn. 📚
- 가이드 문서는 docs.nestjs.com에서 확인하실 수 있습니다. 📚
- ガイドは docs.nestjs.comでご確認ください。 📚
Questions
For questions and support please use the official Discord channel. The issue list of this repo is exclusively for bug reports and feature requests.
Issues
Please make sure to read the Issue Reporting Checklist before opening an issue. Issues not conforming to the guidelines may be closed immediately.
Observability
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.
Consulting
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.
Support
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.
Principal Sponsors
![]() |
![]() |
![]() |
![]() |
Gold Sponsors
![]() |
![]() |
|||
![]() |
Silver Sponsors
![]() |
![]() |
![]() |
||
Sponsors
![]() |
Backers
Stay in touch
- Author - Kamil Myśliwiec
- Website - https://nestjs.com
- X - @nestframework
License
Nest is MIT licensed.










