Keep Dishes Going
DDD-driven microservices platform for restaurants, orders and deliveries.
About the project
Keep Dishes Going is a DDD microservices platform where Restaurant, Order and Delivery services operate autonomously and communicate via RabbitMQ domain events. Each service owns its own database and follows a strict domain model.
Key components
Restaurant Service
- Manages restaurants, menus and availability.
Order Service
- Processes orders and publishes events like OrderPlaced.
- Has a very basic TypeScript front-end since this was not a requirement for this project.
Delivery Service
- Route management for drivers + event consumption.
Messaging
- All services interact asynchronously via RabbitMQ.
Result
A clearly structured, scalable and maintainable platform that combines strong domain architecture with modern * event-driven microservices*.
# my role
Fullstack Developer / Architect
# key features
- ▸ Separated bounded contexts
- ▸ Event-driven integration
- ▸ Own database schema per service