Ecosystem Architecture

Modular dependency layers across the krabka-io ecosystem.

Krabka is architected as 11 decoupled repositories with strict dependency layering. The broker sits on top of krabka-protocol and krabka-client-rs without cyclic dependencies.

Repository Subsystems & Purpose
krabka-protocol Wire codecs, KRaft metadata records, SASL/TLS, compression (snappy/lz4/zstd)
krabka-client-rs Tokio async Kafka client (Producer, Consumer, Admin)
krabka-broker Broker engine, KRaft consensus (krabka-raft), on-disk log (krabka-log), tiered storage
krabka-streams-rs Rust stream runtime with schema registry serdes
krabka-streams-go Go stream processing with Apache Arrow batch memory & barrier cuts
krabka-streams-java Java stream processing with Kafka Streams 4.x and columnar operators
krabka-operator Kubernetes operator reconciling krabka.io/v1alpha1 custom resources
krabka-connect Connector framework, PostgreSQL CDC over pgoutput, worker runtime & replicator
krabka-o11y OpenTelemetry, PromQL metrics, pprof continuous profiling, OCSF audit logs
krabka-cli Admin and cluster formatting CLI tool