kamae-ts — Functional Domain Modeling
A reading version of the principles to follow when modeling domains in server-side TypeScript. Instead of class-based OOP, we lean on the TypeScript type system and a functional approach.
This is a human-oriented reorganization of the knowledge base used by the coding-agent skills shipped in the kamae-ts plugin.
💬 Join the Discord community
A Discord server for discussion, questions, and casual chat about server-side TypeScript and functional domain modeling. You do not need to be a heavy kamae-ts user — newcomers welcome.
See the Community page for details.
Start reading
Each chapter is reachable from the left sidebar, or from the links below.
- Type-Driven Domain Modeling
- State Transitions via Pure Functions
- Error Handling — Railway Oriented Programming
- Boundary Defense
- Declarative Style
- Test Data
- Code Review
Applying the principles
These are recommendations, not strict rules. Use judgment based on context, but when you depart from a principle, document the reason in a comment.