Add Multi-Topic Support to Consumer (#130)

* Add Multi-Topic Support to Consumer

Adds multi-topic support from the C++ library by utilizing pulsar_client_subscribe_multi_topics_async.

* Update c_topics to cTopics

Change from snake_case to camelCase

Co-authored-by: savearray2 <savearray2>
5 files changed
tree: 9b48331f062e9462d9c015dee474fc79df9c604b
  1. .asf.yaml
  2. .clang-format
  3. .eslintignore
  4. .eslintrc.json
  5. .github/
  6. .gitignore
  7. Gruntfile.js
  10. binding.gyp
  12. examples/
  13. index.js
  14. license-header.txt
  15. package-lock.json
  16. package.json
  17. perf/
  20. pulsar-version.txt
  22. src/
  23. tests/

Pulsar Node.js client library

The Pulsar Node.js client can be used to create Pulsar producers and consumers in Node.js.


Pulsar Node.js client library is based on the C++ client library. Follow the instructions for C++ library for installing the binaries through RPM, Deb or Homebrew packages.

(Note: you will need to install not only the pulsar-client library but also the pulsar-client-dev library)

Also, this library works only in Node.js 10.x or later because it uses the node-addon-api module to wrap the C++ library.


Compatibility between each version of the Node.js client and the C++ client is as follows:

Node.js clientC++ client or later or later or later

If an incompatible version of the C++ client is installed, you may fail to build or run this library.

How to install

Please install pulsar-client in your project:

$ npm install pulsar-client

Typescript Definitions

$ npm install @types/pulsar-client --save-dev

Sample code

Please refer to examples.

How to build

Install dependent npm modules and build Pulsar client library:

$ git clone
$ cd pulsar-client-node
$ npm install

Rebuild Pulsar client library:

$ npm run build