finds.dev← search

// the find

TouK/nussknacker

★ 729 · Scala · Apache-2.0 · updated May 2026

Low-code tool for automating actions on real time data | Stream processing for the users.

Nussknacker is a visual, low-code designer for stream processing logic on top of Apache Flink and Kafka, aimed at letting business analysts author decision algorithms without writing code. It sits between a rules engine and a full stream processor — you wire together components (filters, enrichments, aggregations) in a graph UI and deploy them directly to Flink. Target users are teams where domain experts own decision logic but can't write Scala or manage Flink jobs.

The SpEL expression language integration is well thought out — it gives non-technical users real expressive power (conditionals, string manipulation, math) without exposing raw JVM APIs. The built-in scenario testing and counts-per-node observability is genuinely useful and not something you'd get for free from raw Flink. The dual-mode support (streaming via Flink/Kafka and request-response via HTTP) from one design tool is a real architectural win — same logic, different runtime. The component extension model is clean: you implement a Scala trait, annotate parameters, and the designer picks it up automatically.

Flink version support is pinned to one version at a time, and upgrading Flink means waiting for Nussknacker to ship support — the compatibility repo exists but it's not a first-class path. The Scala 2.13-only requirement is a dead end; the ecosystem is moving to Scala 3 and there's no mention of a migration path. Batch processing mode is explicitly not done yet, so if your use case involves anything but streaming or req/res, you're blocked. The operational surface area is massive — you need Kafka, Flink, schema registry, Postgres, and the designer itself running just to get a hello-world scenario deployed, which makes the 'business users can do this' promise ring hollow without serious DevOps investment.

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 →