Brought to you by Resonate

Durable Execution on NATS

Everything durable execution needs, expressed in the primitives NATS already gives you — JetStream for state, pub/sub for transport.

Source-available · BUSL-1.1Built by Resonate HQ

If NATS is already your backbone, durable execution can live inside it. Resonate HQ built a durable-execution server on NATS JetStream: JetStream KV holds the state, pub/sub moves the messages, and the broker you already run is the only dependency.

One protocol, many providers

NATS is now a durable-execution provider.

Any platform that can provide durable storage and an atomic compare-and-swap can implement the durable execution protocol. NATS implements it natively, in its own primitives.

Why NATS

Durable execution without leaving the NATS model.

NATS-native, end to end

JetStream KV holds the state, pub/sub moves the messages, and durable timers fire via JetStream's built-in message scheduler.

Partitions the NATS way

Workload distribution maps onto the NATS partitioning model, and the atomic compare-and-swap and outbox primitives the protocol needs are built directly on JetStream KV.

NATS-native

It speaks NATS, end to end.

Storage, transport, scheduling — all of it stays inside NATS. To connect a worker, bring a NATS connection and hand it to NatsNetwork in the Resonate SDK — the rest of the API is unchanged. TypeScript and Python today; for other languages or HTTP bridging, tell us what your stack needs when you sign up.

What's true today

Here’s exactly where it stands.

License
Source-available under BUSL-1.1 — free for development and evaluation. Each version converts to Apache 2.0 on 2030-07-01.
Maturity
Early. The protocol is implemented end to end, but there are no production reference deployments yet, search is unimplemented, and test coverage is unit tests rather than the crash and linearizability suites the ScyllaDB implementation ships.
Authentication
The server has no auth layer of its own. Everything protecting it comes from your NATS deployment — accounts, users, and subject permissions.
Requirements
A NATS deployment running nats-server 2.14+ with JetStream enabled.
Ownership
Built and maintained by Resonate HQ, independently of the NATS project. The NATS server itself is unmodified and Apache 2.0 — the BUSL license applies only to Resonate's server. Not affiliated with, or endorsed by, Synadia.

Run durable execution on NATS.

Tell us which JetStream deployment you'd run it against. What people sign up with shapes what gets built next.