// the find
lensesio/stream-reactor
A collection of Kafka Connect sinks and sources maintained by Lenses.io.
Stream Reactor is a collection of Kafka Connect connectors maintained by Lenses.io, covering a wide range of sinks and sources: S3, GCS, Azure Data Lake, Cassandra, MongoDB, Elasticsearch/OpenSearch, EventHubs, Service Bus, InfluxDB, MQTT, Redis, and more. It's for teams running Kafka who need production-grade connectors without building them from scratch. The codebase is split between legacy Scala connectors and newer Java connectors, which tells you something about its age and evolution.
The breadth of target systems is genuinely useful — one repo gives you connectors for most of the cloud data ecosystem, maintained by a company with commercial skin in the game. The newer Java connectors (EventHubs, Service Bus) show clear architectural improvement: proper facade/bridge layering, good unit test coverage with well-structured test classes. The dev-scripts directory includes docker-compose setups with step-by-step shell scripts for local testing, which lowers the 'does this actually work?' overhead significantly. Active maintenance is real — last push was two days ago and GitHub Actions covers build, test, and release pipelines.
The Scala/Java split is a liability: you're essentially dealing with two codebases with different build systems (sbt vs. Gradle), different code styles, and different maturity levels — the older Scala connectors have accumulated years of Kafka API drift. Documentation lives entirely on an external Lenses.io docs site rather than in the repo, so if that site changes or goes down, you're reading source code. Several connectors (Kudu, HBase, Hazelcast, Pulsar) were deprecated without replacements, which means the feature matrix has holes that may not be obvious until you're mid-migration. The KCQL query language used for connector configuration is a Lenses proprietary DSL — it's not terrible, but it's another thing to learn and debug, and errors in it can be cryptic.