About
The m09-domain skill assists developers in architecting complex Rust applications using Domain-Driven Design (DDD) principles. It provides structured patterns for distinguishing between Entities and Value Objects, defining aggregate boundaries, and implementing repositories while leveraging Rust's unique ownership and type systems. By focusing on Layer 2 design choices, it helps translate abstract business rules into concrete Rust implementations like the type-state pattern and newtype wrappers, ensuring that domain invariants are enforced at compile-time rather than runtime.