gember / event-sourcing
Use case driven EventSourcing - Let go of the Aggregate with the Dynamic Consistency Boundary (DCB) pattern.
0.3.0
2025-05-10 11:55 UTC
Requires
- php: ^8.3
- ext-mbstring: *
- psr/simple-cache: ^3.0
Requires (Dev)
- captainhook/captainhook: ^5.23
- friendsofphp/php-cs-fixer: ^3.64
- phpstan/phpstan: ^2.1
- phpunit/phpunit: ^12.1
- rector/rector: ^2.0
- rregeer/phpunit-coverage-check: ^0.3.1
- scrutinizer/ocular: ^1.9
- shipmonk/composer-dependency-analyser: ^1.7
README
Use case driven EventSourcing - Let go of the Aggregate with the Dynamic Consistency Boundary (DCB) pattern.
Documentation
- Background
- Installation
- Usage
- Library architecture
- Library reference
- Hooking into the library
In a nutshell
Traditional 'Aggregate driven' EventSourcing
Domain concepts are modeled towards objects: the aggregate.
- Any business logic related to a single domain object should live inside the aggregate
- Logic that involves other domain objects or groups of the same kind of domain objects does not belong in the aggregate
'Use case driven' EventSourcing
Domain concepts are modeled through use cases.
- Any business logic tied to a use case should live inside that use case
- A use case can relate to one or more domain concepts