Danube is an open-source, distributed messaging broker system, built in Rust
Danube aims to be a lightweight yet powerful, secure and scalable messaging platform, suitable for event-driven applications Sub-second dispatch + cloud economics. One broker, two modes: best-effort pub/sub or at-least-once streaming with WAL + object storage.
Zero broker state—metadata in ETCD, data in WAL + S3/GCS/Azure. Scale horizontally in seconds without data migration. Add or remove brokers instantly. Infinite retention without local disk limits. True cloud economics.
Intelligent load management continuously monitors broker health and automatically rebalances topics to prevent hotspots. New topics land on the least-loaded broker. Workload changes? The cluster adapts without manual intervention.
Manage your cluster through natural language with Claude, Cursor, or Windsurf. 32 intelligent tools accessible via Model Context Protocol (MCP), create topics, analyze lag, troubleshoot issues, query metrics, all by conversation. CLI, Web UI, or AI: your choice.
- Non-Reliable: Zero persistence, sub-millisecond latency for real-time metrics and live telemetry
- Reliable: At-least-once delivery with WAL + cloud durability for critical workloads
Centralized schema versioning with compatibility enforcement across JSON Schema, Avro, and Protobuf. Prevent schema drift and invalid messages before they reach consumers. Single source of truth for your data contracts.
Plug-and-play integrations with MQTT, databases, Kafka, ClickHouse, vector databases, and more. Framework isolated from broker core—build connectors without touching cluster internals.
- danube - The messaging broker, a lightweight, cloud‑native messaging platform built in Rust.
- danube-client - Danube Rust client library (SDK)
- danube-go - Danube Go client library (SDK)
- danube-connect-core - Core SDK for building high-performance connectors
- danube-connectors - Available connectors for Danube Messaging
- danube-cli - Command-line companion for interacting with Danube messaging system
- danube-admin - Unified admin tool (CLI + AI/MCP + Web UI)
- Documentation - Architecture, concepts, and guides
- Getting Started - Deploy your first cluster
- Client Libraries - Rust and Go SDKs
- Schema Registry - Type-safe messaging
- ⭐ Star the repo - Show your support!
- 🐛 Report issues - Help us improve
- 💡 Contribute - PRs welcome across all repos
- 📣 Join discussions - Share ideas and feedback