Application architecture
This spoke’s umbrella concept: how a client-facing application is divided into parts, and who decides
the division. Not which framework renders a button (../ui-frameworks-wiki’s subject) and not how the
servers stay up (../platform-ops-wiki) — the layer between, where a codebase acquires boundaries.
The question the founding corpus asks
Three sources arrived over six weeks, from three genres, and they answer one question — who decides an application’s structure — in three different voices:
| Source | Who decides | Scale |
|---|---|---|
| flutter-large-app-structure | the team, by convention | folders inside one codebase |
| micro-frontends-migration | the organization, by ownership | independently deployed units across teams |
| open-saas / wasp | the framework, before you arrive | the whole stack, pre-committed |
Read together they suggest the decision does not disappear when you delegate it. Adopting a boilerplate is a structural choice made by someone whose name the adopting team may never learn.
The one claim all three share
Boundaries beat patterns. flutter-large-app-structure states it directly: “Large applications rarely fail because they lack patterns. They fail because ownership boundaries become unclear.” micro-frontends-migration says the same about teams — micro-frontends optimize for independence, and “when you optimize for reusability, you create coupling.” wasp enforces boundaries by removing the choice: the generated wiring is not yours to arrange.
That agreement is the spoke’s founding thesis and also its weakest point, since two of the three sources argue it and none measures it (synthesis).
The axes worth tracking as sources arrive
- Grain — component, feature, module, deployable unit. The micro-frontends distinction lives here: coarse-grained and self-contained versus fine-grained and configured from outside.
- Who owns state — the feature, or a global container. Both founding architecture sources land on the feature, and both name the same exceptions (auth, theme, localization).
- Where composition happens — build time, server, edge, or the browser at runtime.
- What is duplicated on purpose. “Duplication is far cheaper than the wrong abstraction” is a position, not a truism, and micro-frontends-migration is the only source here that prices it.
- How much is pre-decided. feature-first-structure is a convention a team applies; a boilerplate is a hundred decisions taken in advance.
Related
micro-frontends · feature-first-structure · app-shell · boilerplate · wasp · micro-frontends-migration · flutter-large-app-structure · open-saas · synthesis