@tank/app-architecture
Installation
SKILL.md
Application Architecture
Core Philosophy
- Dependencies point inward. Business logic never depends on frameworks, databases, or HTTP. Infrastructure depends on the domain, never the reverse.
- Boundaries are the architecture. The placement and enforcement of module boundaries matters more than which pattern name you pick.
- Match complexity to the problem. CRUD apps do not need hexagonal architecture. Complex domains do not survive without explicit modeling. Select the lightest pattern that controls your actual complexity.
- Make the implicit explicit. Use cases, domain rules, and module contracts should be readable in code, not buried in service classes or controllers.
- Delay distribution, enforce modularity now. A well-bounded modular monolith can be split into services later. Poorly structured microservices cannot be easily merged back.