finds.dev← search

// the find

SOHU-Co/kafka-node

★ 2,653 · JavaScript · MIT · updated Aug 2023

Node.js client for Apache Kafka 0.8 and later.

A Node.js Kafka client that predates the official `kafkajs` library and covers Kafka 0.9+. It supports producers, consumers, consumer groups, streams, SSL, SASL/PLAIN, and basic admin APIs. If you're starting a new project, this is the wrong choice — it's effectively unmaintained since 2023 and the ecosystem has moved on.

The stream API (ProducerStream, ConsumerGroupStream) is genuinely useful for piping data through standard Node.js streams without managing the fetch loop manually. Consumer group partition assignment is pluggable with a clean interface for custom strategies. SSL and SASL/PLAIN are supported without hacks. Test suite runs against real Kafka via Docker across multiple versions (0.9 through 2.0), which is more honest than most JS library test setups.

Last meaningful activity was 2023 and the repo shows no signs of life — no Kafka 3.x or 4.x support, no KIP-896 support, nothing past protocol version 2.0. The callback-only API is a maintenance burden in 2026; kafkajs and the official @confluentinc/kafka-javascript both offer promise-based APIs with TypeScript-first designs. SASL support is PLAIN only — no OAUTHBEARER, SCRAM-256, or SCRAM-512, which rules this out for any modern cloud Kafka deployment (MSK, Confluent Cloud). The `pause()` behavior is a footgun documented right in the README: calling pause on Consumer does not stop message events from firing.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →