finds.dev← search

// the find

nodefluent/kafka-streams

★ 838 · TypeScript · MIT · updated Mar 2023

equivalent to kafka-streams :octopus: for nodejs :sparkles::turtle::rocket::sparkles:

A Node.js port of the Kafka Streams API, giving you KStream/KTable primitives and stream operators over Kafka topics without leaving the JS ecosystem. Built on most.js observables with backpressure via sinek. Aimed at Node developers who want familiar streaming semantics without spinning up a JVM.

The operator set is genuinely wide — map, filter, reduce, debounce, throttle, asyncMap, and about 30 others are all implemented. The dual-client design (JS kafka-node client + native librdkafka) lets you pick between easy setup and SSL/SASL/Kerberos support. Pluggable storage (KStorage interface) means you can swap in RocksDB, Redis, or Postgres for state instead of being stuck with in-memory. The examples are practical and runnable, not toy snippets.

Abandoned — last meaningful commit was 2023 and the suggested Node version in the README is v12. Most joins are unimplemented: outerJoin and leftJoin are missing on KStream, and KTable joins are almost entirely absent. The native mode hard-requires node-rdkafka and breaks on Node >= 13, which is a dealbreaker in any modern environment. 'Probably, yes' as the production-readiness answer, combined with a dead project, is not reassuring.

View on GitHub → Homepage ↗

// 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 →