Files
ZenXercise/docs/adr/0003-tech-stack-follows-cookit.md
2026-10-28 22:55:07 +01:00

947 B

ADR 0003 — Tech stack follows CookIT

Status: Accepted (2026-10-28)

ZenXercise uses the same stack and conventions as the author's CookIT app (local-first Flutter, Android), so both codebases read alike.

  • State: provider with ChangeNotifier controllers, wired in main.dart via MultiProvider.
  • Persistence: drift + drift_flutter (SQLite); shared_preferences for small settings (last Mode).
  • Navigation: plain Navigator with named routes (no go_router).
  • Strings: flutter gen-l10n with ARB files in lib/src/localization (app_en.arb template).
  • Layout: lib/src/<feature>/ with repositories, controllers and views/.
  • Screen-on in the Player: wakelock_plus. IDs: uuid.
  • Tests: flutter_test, mocktail, sqlite3 (in-memory drift in tests).
  • Lints: flutter_lints. Docs: GLOSSARY.md (term / definition / Avoid) and docs/adr/.

Supersedes the Riverpod / go_router proposal from the grilling session.