A minimal microservices-based banking system demonstrating account, transaction, and ledger management with event-driven communication.
- Account Service – Manages bank accounts
- Transaction Service – Handles transfers and payments
- Ledger Service – Records double-entry bookkeeping
- Identity Service – Authentication & authorization
- Notification Service – Sends alerts via RabbitMQ
- Gateway – Single entry point for clients
- Discovery Service – Service registration & discovery
- DLQ – Dead letter queue for failed events
- Spring Boot
- Kafka (events)
- RabbitMQ (notifications)
- Eureka (discovery)
- API Gateway
- Docker Compose
docker-compose up -d