Morax is a message queue and data streaming system designed to leverage cloud native infrastructure services. Written in Rust, the project provides message queue and data streaming functionality by delegating storage and metadata management to managed cloud services rather than maintaining its own infrastructure.
The architecture separates concerns between metadata and data storage. Metadata operations are backed by Postgres-compatible relational database services, supporting managed offerings like AWS RDS and Aurora. Data storage is handled by S3-compatible object storage services, including AWS S3 and MinIO. This design allows Morax to operate as a stateless service that coordinates between these backing stores, reducing operational complexity and enabling horizontal scaling without managing persistent state directly.
The current implementation exposes basic PubSub APIs through an HTTP wire protocol. This choice of HTTP as the communication protocol means that existing HTTP ecosystem tools and libraries can be used to interact with Morax without requiring specialized client libraries, though the project does provide a dedicated morax-client SDK for convenience. The broker runs as a standalone service that can be started after configuring the required Postgres and S3-compatible storage backends.
Getting started with Morax involves three main steps: setting up the environment with Postgres and MinIO instances, building the morax binary from source, and starting the broker which listens on localhost:8848 by default. The project includes behavior tests that demonstrate the interaction patterns and capabilities of the system, providing concrete examples of how to use the PubSub APIs.
The repository shows active development with regular commits and contributions focused on implementing core messaging functionality. The codebase is organized with clear separation between the main broker implementation and the client SDK, located in the sdk/client directory. Test coverage includes behavior tests that validate the system's functionality against expected messaging patterns.
Morax targets scenarios where organizations want message queue and streaming capabilities without managing dedicated message broker infrastructure. By building on top of cloud native services that are already widely deployed and managed by cloud providers, Morax reduces the operational burden of running a messaging system. This approach is particularly valuable for teams already invested in cloud infrastructure who want to avoid adding another stateful service to their operational footprint.
The project is licensed under Apache License Version 2.0, making it available for both open source and commercial use. The focus on cloud native services and stateless operation positions Morax as a solution for modern cloud architectures where managed services are preferred over self-hosted infrastructure components.