Skip to content

Latest commit

 

History

History
72 lines (54 loc) · 4.52 KB

README.md

File metadata and controls

72 lines (54 loc) · 4.52 KB

⚽ Learning How to Create a Good Modular Monolith

Badge Status


⤴️ Index


📗 About

Started in September 2022, the project has the goal to study and apply different technics to create a good modular monolith. This is a project of a client that I had from 2005 to 2011 and the company does not exist anymore and I use their use cases to study new development approach. It is a Management Tool for Soccer Matches.

Created the first ADR to define the architecture decisions, setup Spring Boot and the gitlab pipeline pointing to my personal kubernetes cluster with 3 raspberry pi.

Implemented the first use cases and aggregates using Domain-Driven Design - DDD, unit/integration/system tests.

After implement some Aggregates using the onion architecture, I decided to migrate the simple aggregate to 1 layer architecture using Spring Data Rest.

The React.js was added to the project in April 2023. The focus was with the workflow and not the design. Also, the web resources was changed to be HATEOAS.

After learn about React.js, make sense to have Spring for GraphQL and avoid multiple sequential call to the backend.

☔ Event Storming Diagram

In August 2023 I decided to redo the event storming diagram. The new diagram groups the Amateur Soccer Group and Ranking aggregates and create a new User aggregate. Those changes will be added to the code soon.

event storming diagram with two bounded context, the authorisation bounded context and the amateur soccer group bounded context.

🧠 ADR - Architecture Decision Records