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 (Command / Query) / Domain Event handlers, Providers’
interfaces
Domain Layer: AggregateRoot, Entity, Value Object, Domain Event
Infrastructure Layer: Persistence, Providers’ implementations
Presentation (Interface) Layer: Request (Command / Query), DTOs
Derive Macros
Proc macro for deriving the
AggregateRoot trait.Proc macro for deriving the
DomainEvent trait.Proc macro for deriving the
Entity trait.Proc macro for deriving the
ValueObject trait.