A practical demonstration of Hexagonal Architecture in Spring Boot with Domain-Driven Design (DDD) principles for a dynamic Product Discount Service. This project emphasizes clean code, testability, and architectural best practices.
💡 This project is a part of my presentation to my team @Transperfect
where I explore Hexagonal Architecture and its application in real-world scenarios. While this application is not business-oriented, its primary focus is on showcasing technical aspects and serving as a learning resource.
🌀 This Application is in-progress 🚧
and I will add new features over time. 🌀
✅ Hexagonal Architecture: The application is structured following the Hexagonal Architecture pattern, allowing for clean separation of concerns.
✅ Domain-Driven Design (DDD): Learn how to model complex business domains using DDD concepts like aggregates, entities, and value objects.
✅ Spring Boot: Take advantage of Spring Boot to create a production-ready application with minimal configuration.
✅ Dynamic Pricing: Implement dynamic pricing strategies that consider various factors, such as product category, manufacturer, and special events.
✅ Unit Testing: Discover the importance of unit testing and how it enhances code quality and maintainability.
✔️ spring-boot-starter-data-jpa
✔️ spring-boot-starter-mongodb
✔️ postgresql
✔️ lombok
✔️ mapstruct
✔️ Junit5
✔️ Mockito
If you like my work, feel free to:
- ⭐ this repository. And we will be happy together :)