// the find
SOHU-Co/kafka-node
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.