architecture-patterns

Catalogue of architectural patterns for Clean Architecture + DDD + Event-Driven systems: Event Modeling, DDD strategic design, DDD tactical patterns, CQRS, and Event Sourcing.

When to use

Entry contract

Exit contract

Invariants

Mermaid notation for context mapping:

graph LR
    EligibilityContext -->|ACL| PolicyContext
    PolicyContext -->|Conformist| BillingContext
    EligibilityContext -->|Published Language| NotificationContext

Why this shape

Patterns are not ends in themselves: they are tools for communicating business invariants in code. Event Modeling starts the DESIGN session on the right foot by making the business fact timeline visible before any tactical decision.

« The heart of software is its ability to solve domain-related problems for its user. » — Evans, E., Domain-Driven Design, 2003.

« Separate the domain layer from the application, infrastructure, and presentation layers. » — Martin, R. C., Clean Architecture, 2017.

Allowed customisation

See also