A stateless, multi-protocol proxy that bridges web apps, IoT devices, and microservices directly to Apache Kafka via declarative APIs.
Zilla is a stateless, multi-protocol proxy that bridges the gap between event-driven architectures and modern application protocols. It enables web applications, IoT devices, and microservices to communicate directly with Apache Kafka using protocols like HTTP, SSE, gRPC, MQTT, or WebSocket without writing custom integration code.
Platform engineers who need to share Kafka clusters across teams, application developers building on real-time data streams without deep Kafka expertise, and API architects who want to drive infrastructure from OpenAPI and AsyncAPI schemas.
Developers choose Zilla because it replaces complex custom connectors, MQTT brokers, and ad-hoc middleware with a single, declaratively configured proxy, reducing integration complexity and latency while providing built-in security, schema validation, and observability.
🦎 A multi-protocol edge & service proxy. Seamlessly interface web apps, IoT clients, & microservices to Apache Kafka® via declaratively defined, stateless APIs.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Exposes Kafka topics as REST, SSE, gRPC, MQTT, or WebSocket endpoints without broker-side code, as demonstrated in the runnable examples like http.kafka.crud and mqtt.kafka.proxy.
Routes and behaviors are defined in a single zilla.yaml file, enabling easy management and reducing the need for custom integration code, as shown in the detailed configuration example.
Integrates with Apicurio or Karapace to validate JSON, Avro, and Protobuf payloads at the proxy layer, centralizing validation and improving data governance.
Uses a zero-copy, flyweight architecture with per-CPU-core workers to minimize latency and GC overhead, as described in the architecture section for near-zero latency overhead.
Provides JWT-based authentication with continuous stream authorization for SSE, plus Prometheus metrics and OpenTelemetry tracing, handling cross-cutting concerns in a sidecar deployment.
The zilla.yaml file requires understanding binding chains and routing rules, which can be verbose and steep for newcomers, as seen in the multi-step configuration example.
Zilla is exclusively tied to Apache Kafka, making it unsuitable for projects using other message brokers or event systems, limiting its flexibility as a general proxy.
Compared to established proxies like Envoy, Zilla has a smaller community and fewer third-party integrations, which might affect long-term support and tooling.
Advanced capabilities like virtual clusters and secure public/private access are only available in Zilla Plus, the paid version, as admitted in the README's comparison section.