Skip to main content

What do you need right now?

NestJS' built-in NATS transport loses messages on pod restart, never retries, and leaves nothing to debug with. This library keeps the decorators and changes what happens underneath: durability, bounded retries, dead letters and W3C tracing.

Three doors, by situation. The full map is in the sidebar.

"Is this production-ready?"​

Why JetStream? states the trade-offs, the cases where the built-in transport is enough on its own, and where Core NATS drops messages. Testing covers what the suite exercises against a real NATS server.

"I need the exact key"​

Module configuration for every option and default, header contract for every header the transport reads and writes, default configs for the stream and consumer values you inherit. Or press ⌘K and type the name.

"Something is wrong in prod"​

By symptom:

SymptomStart here
Messages disappear on deployGraceful shutdown
Consumer lag climbingConsumer issues, performance
Everything dead-lettersDead letter queue, DLQ troubleshooting
RPC calls time outRPC issues
Handlers never fireStartup issues
Stream config change rejectedStream migration

New here​

Quick start gets a consumer running in five minutes, then events is the delivery pattern everything else builds on. Coming from the built-in transport, migrating maps each old option to its replacement.

Runnable examples

The repository has twelve self-contained demos, one per feature, from basic events to multiple connections and cron schedules. Clone and run.