Sample Symfony REST API CQRS implementation with API Platform and DDD using Clean Architecture
Clean Architecture
ArchitectureCQRS
Read Model - executing SQL scripts on database views objects (using Doctrine Query Builder).
Write Model - Domain Driven Design approach (using Doctrine ORM).
Commands/Queries/Domain Events handling using Symfony messenger library.
[WiP] Domain
[WiP] Validation
[WiP] Caching
Frameworks and libraries
Frameworks
Libraries
Ramsey UUID for supporting UUIDs
Symfony Messenger for main CQRS bus and Domain bus
Symfony Workflow for handling domain states
Webmozart Asserts for domain validation