Skip to content

Configuration

All config lives in stackchain.yaml at the project root.

stackchain:
preset: production_bloc
features: [splash, auth, home]

List presets: dart run stackchain presets

Preset Good for
production_bloc Most apps (Bloc + GoRouter + GetIt)
production_riverpod Riverpod apps
production_rxdart RxDart apps
clean_cubit Clean architecture + Cubit
getx_mvc GetX + MVC
firebase_bloc Firebase + Bloc
minimal Smallest scaffold
stackchain:
architecture: feature_first # feature_first | clean | mvvm | mvc
state_management: bloc # bloc | cubit | riverpod | provider | getx | rxdart
routing: go_router # go_router | auto_route | navigator | getx
di: get_it # get_it | injectable | getx
network: dio # dio | http
storage:
- shared_preferences
- secure_storage
features:
- splash
- auth
- home
Key Default What it does
flavors true main_dev / staging / prod entrypoints
ci true GitHub Actions workflow
dark_mode true Theme support
localization false l10n + ARB files
firebase false Firebase placeholder
strict_quality false Fail on analyze issues

If stackchain.yaml is missing, init uses:

  • feature_first + bloc + go_router + get_it + dio
  • storage: shared preferences + secure storage
  • features: [home]
  • flavors + CI on

GetX tip: set state_management: getx and omit routing / di — both become getx.

Full field list: stackchain.yaml reference