# Bible Tracker A Flutter app for tracking your Bible reading progress at your own pace. Inspired by the "My Bible Tracker" Android app. ## Features - Multiple trackers with custom names and colors (e.g. one per reading plan). - Check off chapters as you read them — no schedules, no deadlines. - Overall progress percentage, per-testament breakdowns, per-book progress. - Start date is recorded automatically; see days reading in Stats. - Long-press a tracker on the home screen to rename, recolor, reset, or delete. - Mark an entire book as read (or clear) from the book's screen. - Light and dark modes that follow system settings. - Local-only data (SharedPreferences); no accounts, no network calls. ## Project layout ``` lib/ data/bible.dart # 66-book Bible structure (names, chapter counts) models/tracker.dart # Freezed Tracker model (+ generated files) services/ progress.dart # Pure progress calculations tracker_service.dart # StateNotifier managing trackers tracker_storage.dart # SharedPreferences-backed repository widgets/ theme.dart # AppTokens + AppTheme (light/dark) progress_bar.dart tracker_tile.dart book_tile.dart screens/ home_screen.dart create_tracker_screen.dart tracker_screen.dart book_screen.dart stats_screen.dart main.dart test/ # Mirrors lib/ layout DESIGN_GUIDE.md # Colors, typography, spacing, components AGENTS.md # Contributor / AI-agent guide ``` ## Getting started ```bash flutter pub get dart run build_runner build --delete-conflicting-outputs flutter run ``` ## Verification checklist Run after every change: ```bash dart run build_runner build --delete-conflicting-outputs # if codegen changed dart format . flutter analyze flutter test ``` Never commit unformatted code, analyzer warnings, or a broken test suite. See `AGENTS.md` for full contribution rules.