Skip to content

Architecture

stackchain:
architecture: feature_first
Value Layout
feature_first data / domain / presentation (default)
clean same folders, stricter conventions
mvvm data / models / viewmodels / views
mvc models / controllers / views (great with GetX)

Every architecture still gets the same app shell:

lib/
├── app/ # App, theme, router
├── core/ # network, storage, DI, session
├── features/
└── main.dart

Not sure? Use feature_first (or the production_bloc preset).

Changing architecture later: dart run stackchain migrate --architecture clean --dry-run