Pulsar client libraries

Pulsar supports the following client libraries:

LanguageDocumentationRelease noteCode repo
Java- User doc

- API doc
HereHere
C++- User doc

- API doc
HereHere
Python- User doc

- API doc
HereHere
WebSocketUser docHereHere
Go clientUser docHereHere
Node.jsUser docHereHere
C#User docHereHere
note
  • The code repos of Java, C++, Python, and WebSocket clients are hosted in the Pulsar main repo and these clients are released with Pulsar, so their release notes are parts of Pulsar release note.
  • The code repos of Go, Node.js, and C# clients are hosted outside of the Pulsar main repo and these clients are not released with Pulsar, so they have independent release notes.

Feature matrix

Pulsar client feature matrix for different languages is listed on Pulsar Feature Matrix (Client and Function) page.

Third-party clients

Besides the official released clients, multiple projects on developing Pulsar clients are available in different languages.

If you have developed a new Pulsar client, feel free to submit a pull request and add your client to the list below.

LanguageProjectMaintainerLicenseDescription
Gopulsar-client-goComcastLicenseA native golang client
Gogo-pulsart2yLicense
HaskellsupernovaChatrouletteLicenseNative Pulsar client for Haskell
ScalaneutronChatrouletteLicensePurely functional Apache Pulsar client for Scala built on top of Fs2
Scalapulsar4ssksamuelLicenseIdomatic, typesafe, and reactive Scala client for Apache Pulsar
Rustpulsar-rsWyyerd GroupLicenseFuture-based Rust bindings for Apache Pulsar
.NETpulsar-client-dotnetLanayxGitHubNative .NET client for C#/F#/VB
Node.jspulsar-flexDaniel Sinai, Ron Farkash, Gal RosenbergGitHubNative Nodejs client