To run the application locally, ensure you have Docker Compose installed. If you haven't, follow the Docker Compose installation guide.
Having docker compose installed, follow these steps to run the application:
- Clone the repository
- Go into devops/docker directory
- Inside devops/docker directory, run the following command to start the database:
docker compose up
- Then move back to root directory and run the application with the following command:
mvn spring-boot:run
- Open your browser and go to: http://localhost:8080
- Backend:
- Spring Modulith, Spring Data JPA, Spring Security
- Tests:
- Mockito, AssertJ, RestAssured, Testcontainers
- Database:
- PostgreSQL, Flyway
- Deployment:
- Docker
- CI/CD:
- GitHub Actions
The project is designed for physically active individuals who want to track their progress through detailed body measurements. By providing a structured and efficient way to monitor changes over time, it helps users stay motivated and make informed fitness decisions. Built using a modular monolith architecture, the system offers a balanced approach between the simplicity of a monolith and the scalability of microservices. This architecture ensures flexibility, maintainability, and the ability to evolve over time without the complexity of full microservices.