🌜
🌞
@nestjs/microservices

@nestjs/microservices

v9.0.8

Nest - modern, fast, powerful node.js web framework (@microservices)

npm install @nestjs/microservices

README

Nest Logo

A progressive Node.js framework for building efficient and scalable server-side applications.

NPM Version Package License NPM Downloads CircleCI Coverage Discord Backers on Open Collective Sponsors on Open Collective Support us

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 e.g. Fastify, allowing for easy use of the myriad 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 and backend applications, giving rise to awesome projects like Angular, React and Vue which improve developer productivity and enable the construction of fast, testable, 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, loosely coupled and easily maintainable applications. The architecture is heavily inspired by Angular.

Getting started

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.

Consulting

With official support, you can get expert help straight from 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

principal sponsor principal sponsor principal sponsor principal sponsor principal sponsor principal sponsor

Gold Sponsors

gold sponsor gold sponsor gold sponsor gold sponsor gold sponsor

Silver Sponsors

silver sponsor silver sponsor silver sponsor silver sponsor silver sponsor silver sponsor silver sponsor
silver sponsor

Sponsors

sponsor sponsor sponsor sponsor sponsor sponsor
sponsor sponsor sponsor sponsor sponsor sponsor
sponsor sponsor sponsorsponsor sponsor sponsor
sponsorsponsorsponsorsponsor sponsor sponsor
sponsor sponsor sponsor sponsor sponsorsponsor
sponsor sponsor sponsor sponsor sponsor sponsor
sponsor sponsor sponsor sponsor sponsor

Backers

backer

Stay in touch

License

Nest is MIT licensed.

Release Notes

9.0.7
By Kamil Mysliwiec • Published on July 28, 2022

Enhancements

  • microservices

Docs

Dependencies

Committers: 2

9.0.6
By Kamil Mysliwiec • Published on July 28, 2022

v9.0.6 (2022-07-28)

Features

  • common
    • #9935 feat(common): pass options to nested async modules (@random42)

Bug fixes

  • common
  • microservices
    • #9996 fix(microservices): prevent kafka parser from modifying received message (@jDzames)

Enhancements

  • microservices
  • core
    • #9836 feat(core): add option to disable logs on LazyModuleLoader#load (@micalevisk)

Dependencies

Committers: 7

9.0.5
By Kamil Mysliwiec • Published on July 20, 2022

v9.0.5 (2022-07-20)

Bug fixes

  • common, platform-express

Enhancements

  • microservices
    • #9798 feat(microservices): add noAssert option for RMQ connection (@frankmangone)
    • #9954 feat(microservices): add Kafka heartbeat callback to KafkaContext (@kosh-b)
  • platform-express, platform-fastify
    • #9926 fix(express,fastify): raw body for urlencoded requests (@tolgap)

Dependencies

  • Other
    • #9959 chore(deps): bump terser from 5.10.0 to 5.14.2 in /sample/30-event-emitter (@dependabot[bot])
    • #9960 chore(deps): bump terser from 5.14.1 to 5.14.2 in /sample/32-graphql-federation-schema-first/users-application (@dependabot[bot])
    • #9961 chore(deps): bump terser from 5.10.0 to 5.14.2 in /sample/31-graphql-federation-code-first/gateway (@dependabot[bot])
    • #9962 chore(deps): bump terser from 5.10.0 to 5.14.2 in /sample/31-graphql-federation-code-first/users-application (@dependabot[bot])
    • #9963 chore(deps): bump terser from 5.10.0 to 5.14.2 in /sample/32-graphql-federation-schema-first/posts-application (@dependabot[bot])
    • #9964 chore(deps): bump terser from 5.10.0 to 5.14.2 in /sample/32-graphql-federation-schema-first/gateway (@dependabot[bot])
    • #9965 chore(deps): bump terser from 5.10.0 to 5.14.2 in /sample/29-file-upload (@dependabot[bot])
    • #9966 chore(deps): bump terser from 5.10.0 to 5.14.2 in /sample/28-sse (@dependabot[bot])
    • #9967 chore(deps): bump terser from 5.10.0 to 5.14.2 in /sample/31-graphql-federation-code-first/posts-application (@dependabot[bot])
    • #9951 chore(deps-dev): bump mongoose from 6.4.4 to 6.4.5 (@dependabot[bot])
    • #9952 chore(deps-dev): bump concurrently from 7.2.2 to 7.3.0 (@dependabot[bot])
  • platform-fastify

Committers: 4

9.0.2
By Kamil Mysliwiec • Published on July 11, 2022

v9.0.2

Bug fixes

Enhancements

  • core
    • #9902 refactor(core): replace our own 1-level flatten by the native one (@micalevisk)

Dependencies

Committers: 3

9.0.0
By Kamil Mysliwiec • Published on July 8, 2022

v9.0.0 (2022-07-08)

Article: https://trilon.io/blog/nestjs-9-is-now-available

Migration guide: https://docs.nestjs.com/migration-guide

Features

Bug fixes

  • microservices

Enhancements

  • common, core, platform-express, platform-fastify
    • #8802 fix: only send exception responses if header is not already sent (@wSedlacek)
    • #9591 feat(common,core): make HttpServer#applyVersionFilter mandatory (@micalevisk)
  • common
    • #9705 feat(common): Add error chaining support to http exception (@vinnymac)
    • #9383 feat(common): disallow usage of inject on class and value providers at type level (@micalevisk)
    • #9023 fix: fix factory provider definition (@ZanMinKian)
    • #8459 fix(common): ParseUUIDPipe - throw exceptions with exceptionFactory only (@titivuk)
  • microservices
    • #9681 fix(microservices): allow postfixId on KafkaOptions to be an empty string (@micalevisk)
    • #8798 feat(microservices): migrate redis transporter to internally use ioredis package (@kamilmysliwiec)
    • #9586 feat(microservices): add kafka retriable exception, auto-unwrap payloads (@kamilmysliwiec)
  • core
    • #9720 fix(core): prevent renaming global providers and modules in the repl (@micalevisk)
    • #9596 feat(core): throw an exception instead of logging due to module import misusage (@micalevisk)
  • common, core, microservices
    • #9604 refactor(common,core,microservices): drop all deprecated methods (@micalevisk)
  • core, websockets
    • #9491 feat(core,websockets): use rxjs to check if values are observables (@micalevisk)

Dependencies

Committers: 13

8.4.7
By Kamil Mysliwiec • Published on June 14, 2022

v8.4.7 (2022-06-14)

Enhancements

  • microservices
    • #9719 feat(microservices): exposes base context on the main package (@delucca)
    • #9751 fix(microservices): adds feedback message when RabbitMQ server connection hangs (@delucca)
  • common
    • #9742 Improve stripProtoKeys performance, especially for TypedArray (@mjgp2)

Dependencies

Committers: 5

8.4.5
By Kamil Mysliwiec • Published on May 13, 2022

v8.4.5 (2022-05-13)

Bug fixes

Enhancements

  • common
  • core
    • #9506 feat(core): enhance circular dependency error message (@ntibi)

Dependencies

Committers: 6

8.4.4
By Kamil Mysliwiec • Published on April 7, 2022

v8.4.4 (2022-04-07)

Bug fixes

Enhancements

  • common
    • #9444 feat(common): change private modifer on built-in pipes to protected (@micalevisk)
    • #9435 feat(common): set default StreamableFile length automatically when possible (@jonahsnider)

Dependencies

Committers: 5

8.4.1
By Kamil Mysliwiec • Published on March 14, 2022

v8.4.1 (2022-03-14)

Bug fixes

Enhancements

Dependencies

Committers: 6

8.4.0
By Kamil Mysliwiec • Published on March 1, 2022

v8.4.0 (2022-03-01)

Features

  • common, core

Bug fixes

  • microservices
  • core

Enhancements

  • microservices
    • #9059 feat(microservices): add tcp raw data processing capabilities (@jeanbmar)
    • #9270 feat(microservices): add commit-offsets function to clientkafka (@davidschuette)
    • #9200 feat(microservices): Add options param to serializer (@guiruiz)
  • common
    • #9209 feat(common): add abstract type to catch decorator (@jeean)
    • #9247 fix(common): Providing typing for optional error handling in middleware (@brian-pinwheel)
  • common, platform-express, platform-fastify

Dependencies

Committers: 10

General

License
MIT
Typescript Types
None found
Tree-shakeable
No

Popularity

GitHub Stargazers
51K
Community Interest
47.3K
Number of Forks
5,944

Maintenance

Commits
10/219/220450
Last Commit
Open Issues
42
Closed Issues
4,329
Open Pull Requests
30
Closed Pull Requests
1,290

Versions

Versions Released
10/219/2208
Latest Version Released
Aug 3, 2022
Current Tags
latest9.0.8
rc6.0.0-rc.1
beta5.0.0-beta.8
next9.0.0-next.2

Dependencies

Dependencies (3)
Dev Dependencies (2)

Contributors

renovate-bot
renovate-bot
Commits: 2,633
kamilmysliwiec
kamilmysliwiec
Commits: 1,667
mkaufmaner
mkaufmaner
Commits: 81
Tony133
Tony133
Commits: 50
BrunnerLivio
BrunnerLivio
Commits: 49
jmcdo29
jmcdo29
Commits: 39
jbpionnier
jbpionnier
Commits: 31
tonyhallett
tonyhallett
Commits: 21
anton-alation
anton-alation
Commits: 20
Geass1000
Geass1000
Commits: 19
johnbiundo
johnbiundo
Commits: 18
Ayzrian
Ayzrian
Commits: 15
cschroeter
cschroeter
Commits: 15
Upperfoot
Upperfoot
Commits: 13
wbhob
wbhob
Commits: 12