How to Develop with NATS

Developing with NATS involves a blend of distributed application techniques, common NATS features, and library-specific syntax. Besides this guide, most libraries provide auto-generated API documentation, along with language and platform-specific examples, guides, and other resources.

Language Links
Golang nats.go, godoc
Java nats.java, javadoc, nats.java examples, java-nats-examples repo
C# nats.net, doxygen, package
C# (v2) nats.net.v2, docs, package
JavaScript Node.js, deno, WebSocket
Python nats.py, doc
Ruby nats-pure.rb, yard
C nats.c, doc
Rust nats.rs, rust doc
Elixir nats.ex, hex doc
Zig nats.zig
Swift nats.swift

Not all libraries have their own documentation, depending on the language community, but be sure to check out the client libraries’ README for more information.

There are many other NATS client libraries and examples contributed and maintained by the community and available on GitHub, such as: