Screaming Architecture
ELI5 — The Vibe Check
Screaming architecture means your folder structure screams what the app DOES, not what framework it uses. Instead of /controllers, /models, /views, you see /patients, /appointments, /billing. One look at the folders and you know it's a healthcare app.
Real Talk
An architectural philosophy (coined by Robert C. Martin) where the project structure reflects the domain and use cases rather than the framework or technical layers. The architecture should 'scream' its purpose — a healthcare system's top-level structure should show healthcare concepts, not web framework conventions.
When You'll Hear This
"Your top-level folders should scream 'healthcare system,' not 'it's a Rails app.'" / "Screaming architecture makes onboarding easier — new developers immediately understand what the system does."
Related Terms
Clean Architecture
Clean Architecture is like an onion with strict rules: the inner layers (your core business logic) have absolutely no idea the outer layers (databases, API...
Domain-Driven Design (DDD)
DDD says your code should speak the same language as the business.
Separation of Concerns
Separation of Concerns means different parts of your code should handle different concerns and not step on each other's toes.
Vertical Slice Architecture
Vertical slice architecture organizes code by feature, not by layer.