Expand description
ddd-rs
Domain-Driven Design (DDD) building blocks, for Rust applications.
Most of the definitions on these docs are taken from Eric Evan’s Domain-Driven Design: Tackling Complexity in the Heart of Software.
Application Layer
Domain Layer
Infrastructure Layer
- Persistence
Presentation Layer
Modules
Application Layer: Repository, Request / Notification handlers, Providers’ interfaces
Domain Layer: Aggregate Root, Entity, Value Object
Infrastructure Layer: Persistence, Providers’ implementations
Presentation (Interface) Layer: Request (Command / Query), Notification, DTOs
Derive Macros
Proc macro for deriving the
AggregateRoot trait.Proc macro for deriving the
Entity trait.Proc macro for deriving the
Notification trait.Proc macro for deriving the
ValueObject trait.