# Sprout Mobile Flutter mobile client for Sprout. ## Setup ```bash cd mobile flutter pub get ``` ## Run ```bash flutter run ``` ## Checks ```bash dart format --output=none --set-exit-if-changed . flutter analyze flutter test ``` Or from the repo root: `just mobile-check` and `just mobile-test`. ## Architecture ``` lib/ ├── main.dart # Entry point, Riverpod bootstrap ├── app.dart # MaterialApp with theme ├── shared/ │ └── theme/ # Catppuccin light/dark, spacing tokens, extensions └── features/ └── home/ # Placeholder home surface ``` - **State management:** Riverpod + Hooks (`HookConsumerWidget`) - **Theme:** Catppuccin Latte (light) / Macchiato (dark) — matches desktop - **Spacing:** `Grid` tokens for consistent spacing - **Linting:** `flutter_lints` + `riverpod_lint` via `custom_lint` - **Feature isolation:** No cross-feature imports except `shared/`