Welcome to MicroApply! A basic demonstration of microservices built with Spring Boot. This project showcases the fundamental principles of microservice architecture but is not a fully-fledged application. 💼
- 🌐 API Gateway: Central entry point for client requests.
- 📝 Job Management: Create and manage job postings effortlessly.
- 📄 Application Tracking: Submit applications and monitor progress.
- 📩 Real-time Notifications: Get updates on job applications via email.
- 📊 Observability: Integrated Grafana, Prometheus, and Loki for monitoring.
- ✅ Test Coverage: Ensures code reliability with comprehensive tests.
MicroApply is powered by cutting-edge technologies:
- Java 21 & Spring Boot (Core framework)
- JPA & MySQL (Database)
- RabbitMQ (Messaging)
- Keycloak (Authentication & Authorization)
- Grafana, Prometheus, Loki, Tempo (Monitoring & Tracing)
| Service | Description |
|---|---|
| API Gateway | Handles authentication & request routing |
| Job Service | Manages job postings |
| Application Service | Handles job applications |
| Notification Service | Sends notifications via email |
| Common | Shared resources & utilities |
git clone <repository-url>
cd microapply./mvnw clean installUsing Docker Compose:
docker-compose up -dOr run individual services:
./mvnw spring-boot:run -pl <service-name>- API Gateway: http://localhost:8080
- Grafana: http://localhost:3000
- Keycloak: http://localhost:8081
I’d love your contributions! If you have ideas for improvements or new features, feel free to fork the repo and open a pull request. 🛠️
This project is licensed under the MIT License.