Alginte 0.9.0 Beta
Released 2026-08-27.
Alginte is in beta (0.x): configuration keys, the topology export format, and APIs may change between releases; breaking changes are called out in release notes with migration guidance. 0.9.0 contains no breaking changes.
Your stream's state, handled honestly
A Kafka Streams deployment leaves state on the cluster — changelog and repartition topics, committed offsets, registry subjects auto-registered under those topics' names. 0.9.0 stops pretending otherwise, in both directions.
Delete can take state with it. Deleting a stream still leaves the cluster untouched by default — but an opt-in checkbox now also removes the stream's changelog and repartition topics, its consumer group, its local state directory, and the auto-registered subjects, with a per-leg report of what was actually removed. Source and sink topics are never touched either way.
Redeploying onto old state asks first. Deploying an
application.id whose state is still on the cluster — but
which no live deployment owns — now stops and shows you the inventory:
Continue on this state (you declare the design identical to the
one that built it, and you were told what you declared) or
Start fresh (remove the listed state, then deploy clean).
Previously the deploy silently adopted whatever was there.
Building this against real clusters surfaced two bugs no unit test could see — consumer-group members lingering ~45s after a stop, and a stale local state directory forcing a restore-corruption cycle on fresh redeploys. Both fixed in this release.
Serdes you can find
The stream Properties form's default.key.serde /
default.value.serde fields (and friends) now suggest real
classes probed from the running instance's classpath — the Kafka
built-ins and the Confluent registry serdes — while free text stays
legal. A class name that doesn't resolve, or isn't a serde, is rejected
at Submit with an error naming the class and the config key, instead of
a runtime failure after deploy. Registry-backed default serdes inherit
the app-configured Schema Registry connection automatically.
Fixes
- The Schema Registry page's soft-deleted subject count always read zero — the registry was being asked with a query parameter it doesn't know. It now reports the real number.
- An invalid create-time topic config answers 400 with the broker's own message ("Unknown topic config name: …") instead of a generic 500.
- Consuming from a topic that doesn't exist answers 404 instead of polling the broker forever.
- Produce-time schemas resolve by exact subject — a subject whose name merely starts with another's can no longer be picked by accident.
- Config help tooltips render Kafka's own documentation formatting (code markup no longer shows as raw tags).
- Connector-level failure traces reach the UI, the trace dialog names what it shows, and each Restart button spins alone.
- The Mode and Compatibility columns on the schemas table sort by the value they display (subject override, else the global fallback).
- Switching schema type in the Create Schema form no longer discards what you typed — each type keeps its own draft.
Smaller but visible
- The topology canvas gains snap-to-grid (opt-in, remembered) and zoom-to-selection.
- Tab selections stick across programmatic changes on all five tabbed pages.
-
Creating a
_-prefixed topic warns that the topic list hides such names by default — the broker still accepts it. - Partition and topic listings cost a flat number of admin calls regardless of cluster size — large clusters with thousands of internal topics render their filtered pages without describing everything first.
-
Third-party attribution now ships inside the artifact
(
META-INF/NOTICEand companions) for the vendored Spring expression-tokenizer sources. - Broker compatibility re-verified for this release: Apache Kafka 3.7–4.2, Confluent Platform 8.2, and Redpanda.
Get it
docker pull alginte/alginte:latest Full install guide in the documentation — or try the playground: one command, no Kafka needed.