Repositories
How the solution's responsibilities are distributed across multiple repositories and why that separation can be useful.
Why multi-repo?
Splitting repositories can help to:
- isolate domains
- enable independent deployments
- reduce size and noise per repository
- give each team clear ownership
Main repositories
globalsone-frontend
Contains the SPA and the user experience.
globalsone-api-gateway
Contains the gateway’s configuration and behavior.
globalsone-bff
Contains aggregation, transformation, and frontend-oriented endpoints.
globalsone-ms-{domain}
Contain the business logic of each domain.
globalsone-shared-kernel
Contains types or contracts that are genuinely shared and stable.
Benefits
- Clearer ownership
- Independent CI/CD
- Lower impact from local changes
- Better organizational separation
Costs
- More coordination between repos
- Versioning of shared packages
- Distributed visibility
- Greater governance discipline
When it makes sense
It makes the most sense when:
- there are several well-defined domains
- multiple teams work in parallel
- deployments need real independence
- the organization is ready to govern contracts and standards
Summary
Multi-repo is not a goal in itself. It is an organizational strategy that can bring clarity and independence, as long as it comes paired with good boundaries and good collaboration rules.