screaming-architecture
Installation
SKILL.md
Screaming Architecture
The top-level structure of a project should scream its domain, not its framework. Folder names reflect business capabilities and use cases — not technical layers like controllers, models, or services.
Coined by Robert C. Martin: "Your architecture should tell readers about the system, not about the frameworks you used."
When to Use
- Starting a new project or service
- Refactoring a codebase grown around framework conventions
- Multiple developers struggle to locate where a business concept lives
- The folder structure reads as "Express app" or "MVC project" instead of the actual domain
Don't use for:
- Very small scripts or utilities with no meaningful domain
- Projects where the entire domain is one concept (no benefit to partitioning)