domain-modeling
Installation
SKILL.md
Domain Modeling
Value: Communication -- domain types make code speak the language of the business. They turn implicit knowledge into explicit, compiler-verified contracts that humans and AI can reason about.
Purpose
Teaches how to build rich domain models that prevent bugs at compile time rather than catching them at runtime. Covers primitive obsession detection, parse-don't-validate, making invalid states unrepresentable, and semantic type design. Independently useful for any code review or design task, and provides the principles that domain review checks for in the TDD cycle.
Practices
Avoid Primitive Obsession
Do not use raw primitives (String, int, number) for domain concepts.
Related skills