Native Package Manager

    kafkajs-dg
    TypeScript icon, indicating that this package has built-in type declarations

    1.9.3 • Public • Published

    KafkaJS

    A modern Apache Kafka client for node.js. This library is compatible with Kafka 0.10+.
    Native support for Kafka 0.11 features.

    KafkaJS is battle-tested and ready for production.

    Build Status npm version Slack Channel

    Features

    • Producer
    • Consumer groups with pause, resume, and seek
    • Transactional support for producers and consumers
    • Message headers
    • GZIP compression
    • Snappy and LZ4 compression through plugins
    • Plain, SSL and SASL_SSL implementations
    • Support for SCRAM-SHA-256 and SCRAM-SHA-512
    • Support for AWS IAM authentication
    • Admin client

    Getting Started

    npm install kafkajs
    # yarn add kafkajs 
    const { Kafka } = require('kafkajs')
     
    const kafka = new Kafka({
      clientId: 'my-app',
      brokers: ['kafka1:9092', 'kafka2:9092']
    })
     
    const producer = kafka.producer()
    const consumer = kafka.consumer({ groupId: 'test-group' })
     
    const run = async () => {
      // Producing
      await producer.connect()
      await producer.send({
        topic: 'test-topic',
        messages: [
          { value: 'Hello KafkaJS user!' },
        ],
      })
     
      // Consuming
      await consumer.connect()
      await consumer.subscribe({ topic: 'test-topic', fromBeginning: true })
     
      await consumer.run({
        eachMessage: async ({ topic, partition, message }) => {
          console.log({
            partition,
            offset: message.offset,
            value: message.value.toString(),
          })
        },
      })
    }
     
    run().catch(console.error)

    Documentation

    Learn more about using KafkaJS on the official site!

    Contributing

    KafkaJS is an open-source project where development takes place in the open on GitHub. Although the project is maintained by a small group of dedicated volunteers, we are grateful to the community for bugfixes, feature development and other contributions.

    See Developing KafkaJS for information on how to run and develop KafkaJS.

    Help wanted 🤝

    We welcome contributions to KafkaJS, but we also want to see a thriving third-party ecosystem. If you would like to create an open-source project that builds on top of KafkaJS, please get in touch and we'd be happy to provide feedback and support.

    Here are some projects that we would like to build, but haven't yet been able to prioritize:

    Acknowledgements

    Thanks to Sebastian Norde for the V1 logo ❤️

    Thanks to Tracy (Tan Yun) for the V2 logo ❤️

    Sponsored by:

    License

    See LICENSE for more details.

    Install

    npm i kafkajs-dg

    Homepage

    kafka.js.org

    DownloadsWeekly Downloads

    9

    Version

    1.9.3

    License

    MIT

    Unpacked Size

    465 kB

    Total Files

    264

    Last publish

    Collaborators

    • jasine