Overview
The module internal structure diagram uses nested containment to show the layers within a module: the outermost ring is the module itself, enclosing domain, application, and infrastructure layers. Each layer has clear boundaries and only communicates through well-defined interfaces.
Key takeaways
- Contracts define the public API surface — cross-module calls go through Contracts only
- Domain is the innermost stable layer — entities, value objects, and domain events
- Infrastructure adapters implement repository interfaces defined in the domain
- The red-line rule: cross-module state changes flow through integration events, not direct calls
Related
- Vertical Slice — internal module organization
- Module Dependencies — inter-module structure