What problem does it solve?
It helps you structure complex business logic in .NET so your model stays consistent, expressive, and maintainable as the system grows.
Core Features & Use Cases
- Aggregate boundaries & invariants: Model consistency by grouping entities and value objects into aggregates that enforce rules transactionally.
- Value objects and strongly-typed IDs: Replace primitive obsession with immutable value objects and prevent ID mix-ups with strongly-typed identifiers.
- Domain events and aggregate-focused repositories: Decouple side effects using domain events and persist aggregates via one repository per aggregate root.
Quick Start
Load the ddd skill when implementing or refactoring a .NET domain to use aggregates, value objects, domain events, strongly-typed IDs, and a repository-per-aggregate-root approach.