id: client-libraries title: Pulsar client libraries sidebar_label: “Overview”

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