finds.dev← search

// the find

akka/alpakka-kafka

★ 1,422 · Scala · NOASSERTION · updated Apr 2026

Alpakka Kafka connector - Alpakka is a Reactive Enterprise Integration library for Java and Scala, based on Reactive Streams and Akka.

Alpakka Kafka is the official Akka Streams connector for Apache Kafka, giving you a reactive, backpressure-aware bridge between Kafka topics and Akka stream graphs. It's for JVM teams already running Akka who want to consume or produce Kafka messages inside a streaming pipeline rather than writing consumer loop boilerplate. Not a standalone Kafka client — it only makes sense if you're already in the Akka ecosystem.

Transactional exactly-once support is well-implemented: the `Transactional.source` / `Transactional.sink` pair handles the Kafka transaction API correctly, including fencing and epoch management. Cluster Sharding integration (`KafkaClusterSharding`) lets you co-locate Kafka partition processing with Akka Shard Regions, which is non-trivial to get right and saves a lot of custom plumbing. The testkit ships Testcontainers support out of the box, so integration tests spin up a real Kafka without any manual setup. MiMa binary compatibility checks are tracked going back to 0.20, which matters when you're upgrading libraries in a live system.

The license changed to Business Source License 1.1 — this is not open source. It converts to Apache 2.0 after four years, but if you're using it in a production SaaS product today you need to read the BSL terms carefully before adopting. Building locally requires fetching a token from account.akka.io and wiring it into SBT, which is a friction point for contributors and CI pipelines. The README buries this requirement at the bottom after a wall of marketing copy about the Akka platform. API stability is explicitly not guaranteed — the 'Caveat Emptor' section warns that modules can be dropped without deprecation, which is a real adoption risk for a library this deep in your stack.

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 →