Here you will find the NATS Server (for simple, fast publish-subscribe) , NATS Streaming Server (for data streaming and persistence), and officially supported clients. Our documentation provides detailed instructions on how to get started.

Also available are a wide variety of community contributed clients, connectors, and utilities. We are always happy to receive contributions to review - send us a PR, or contact us at info@nats.io to share what you have built with us!


Connectors and Utilities

Name Description Developer Support
NATS Connector Framework A pluggable Java based framework to bridge the NATS messaging system and other technologies. NATS.io team Apcera
NATS Redis PubSub The NATS Redis publish subscribe connector is provided to facilitate the bridging of NATS and Redis Publish/Subscribe. NATS.io team Apcera
Apache Spark Provides an Apache Spark (a fast and general engine for large-scale data processing) integration with NATS. Laurent Magnin at Logimethods Community
AWS NATS This repository contains tools and templates to help using NATS in the Amazon Web Services platform. Danko Miocevic Community
NATSBoard Dashboard for monitoring NATS. It provides real-time information from NATS server. Fatih Cetinkaya Community
CoreOS Clustering NATS clustering made easy with CoreOS, etcd2 and Docker. Paulo Pires Community
Deepstream.io connector for NATS Deepstream message connector for NATS nxtedition Community
Dokku-NATS NATS plugin for Dokku, a PaaS Platform Jose Diaz-Gonzalez Community
Elasticsearch Allows you to take data from nats subjects/groups and pump these into Elasticsearch. Netlify Community
NATS Elk Utility for forwarding NATS monitoring data to ELK Stack Vladimir Sundupey Community
Fluent Bit The NATS output connector allows to flush your Fluent Bit records into a NATS Server endpoint Fluent Bit Community
Fluentd Event Collector NATS plugin for fluentd Event Collector Cloud Foundry Community Community
A Gatling to NATS Connector The NATS Gatling library provides a Gatling (an open-source load testing framework based on Scala, Akka and Netty) to NATS messaging system (a highly performant cloud native messaging system) Connector. Laurent Magnin Community
Kubernetes NATS cluster on top of Kubernetes made easy. Paulo Pires Community
Logrus-NATS A Logrus hook for sending data to NATS. Erik Howard Community
Logrus NATS hook for Logrus - helpers assume you are using a TLS connection. Ryan Neal Community
NATS-Mon A realtime web based NATS monitor Raül Pérez Community
Nvisible Inc Go ARI Proxy An implementation of the [go-ari-library] used to connect to the Asterisk REST Interface for delivery of Events and Commands across a message bus. Leif Madsen Community
Prometheus NATS exporter for Prometheus, written in Go. It extracts several metrics and provides them via the standard HTTP interface for Prometheus to collect them. Lovoo Community
NATS Prometheus Exporter The official NATS exporter for Prometheus, written in Go. It supports monitoring multiple NATS servers, is highly resilient to network outages, and can be embedded into go applications via an API. Metrics are exposed through a HTTP(S) interface for Prometheus to collect them. NATS.io team Apcera
Rancher NATS This is an extended version of the official Docker image for nats. It adds support to set up a cluster easily onrancher. Community
REST to NATS Proxy This library provides a translation of HTTP requests to NATS. Client side is partly inspired by Gin to process requests Radomír Sohlich Community
NATS Sniffer A simple sniffer for NATS, the cloud native messaging system. Paulo Pires Community
NATS Streaming Server on Kubernetes This project contains a Docker image and a Helm chart to run NATS Streaming Server in the Kubernetes cluster. The NATS Streaming Server can run in fault tollerance mode. Canh Ngo Community
NATS-RPC Generator RPC layer on top of NATS standardizing on Protocol Buffers. Department of Biomedical and Health Informatics Community
nRPC is like gRPC, but over NATS nRPC is an RPC framework like gRPC, but for NATS. It can generate a Go client and server from the same .proto file that you'd use to generate gRPC clients and servers. The server is generated as a NATS MsgHandler. Cameron Sparr Community
Socket.io-NATS Connector This connector enables multiple socket.io instances to broadcast and emit events to and from each other through NATS. Edgar Ribeiro Community
Telegraf The NATS consumer plugin reads from specified NATS subjects and adds messages to InfluxDB. The plugin expects messages in the Telegraf Input Data Formats. A Queue Group is used when subscribing to subjects so multiple instances of telegraf can read from a NATS cluster in parallel. Cameron Sparr Community
websocket-nats An in-browser websocket client for NATS, a lightweight, high-performance cloud native messaging system. Josh Glendenning Community
Websocket Gateway A websocket gateway for NATS, usable as a backend for elm-nats and websocket-nats. Orus.io Community
Hemera A Node.js microservices toolkit for NATS. Dustin Deus Community

Please contact us to add your external client to the download list.