RabbitMesh
Zero-Port Microservices Framework
Write business logic, get REST + GraphQL APIs automatically
RabbitMesh eliminates traditional microservice complexity by using RabbitMQ for all inter-service communication. Write business logic, get REST + GraphQL APIs automatically.
β¨ Key Features
- π₯ Zero Port Management - Services only connect to RabbitMQ
- β‘ Never Blocks - Every request spawns async task
- π― Auto-Generated APIs - Write service methods, get REST + GraphQL
- π Universal Macros - 50+ macros for auth, caching, validation, metrics
- π‘οΈ Production Ready - Built-in retries, timeouts, load balancing
- π Deploy Anywhere - Docker, Kubernetes, bare metal
π Documentation
- π Quick Start Guide - Get started in 5 minutes
- π Complete Developer Guide - Comprehensive guide with real-world examples
- ποΈ API Documentation - Full API reference
- π Publishing Guide - How to publish to crates.io
π Quick Start
1. Define Your Service
use ;
;
2. Start Your Service
use MicroService;
async
3. Auto-Generated API Gateway
use create_auto_router;
async
ποΈ Architecture
βββββββββββββββ βββββββββββββββ βββββββββββββββββββββββββββββββββββ
β Frontend ββββββ API Gateway ββββββ Service Mesh β
β (NextJS) βHTTPβ (Auto-Gen) βAMQPβ βββββββ βββββββ βββββββ β
β β β β β βUser β βAuth β βOrderβ ... β
βββββββββββββββ βββββββββββββββ β βββββββ βββββββ βββββββ β
β β β
β βββββββββββββββ β
β β RabbitMQ β β
β β Broker β β
βββββββ΄ββββββββββββββ΄βββββββββββββ
π¦ Crates
rabbitmesh
- Core microservice frameworkrabbitmesh-macros
- Code generation macrosrabbitmesh-gateway
- Auto-generating API gatewayexamples/ecommerce
- Complete demo application
π― Why RabbitMesh?
Traditional HTTP | RabbitMesh |
---|---|
β Port management hell | β Zero ports to manage |
β Manual load balancing | β Automatic via RabbitMQ |
β Service discovery complexity | β Auto-discovery via queues |
β Blocking request handlers | β Every request is async |
β Manual API development | β Auto-generated REST + GraphQL |
π Performance
- Latency: 3-10ms (vs 1-5ms HTTP direct)
- Throughput: Higher than HTTP (persistent connections)
- Concurrency: Unlimited (every request = async task)
- Scalability: Linear (add instances = proportional capacity)
π Getting Started
See the examples/simple-todo directory for a complete working example, or use our AI agent to create new projects:
# Install the AI agent and create a new project
π€ Contributing
We welcome contributions! Please see our Contributing Guide for details.
- π Report Bugs
- π‘ Request Features
- π Submit Pull Requests
π License
MIT license. See LICENSE for details.
Built with β€οΈ by the RabbitMesh Team
π¦ Crates.io β’ π Docs β’ π GitHub β’ π¬ Discussions
The future of microservices is here - zero ports, maximum power, pure elegance β¨