No description
Find a file
2026-08-04 14:15:20 -04:00
android One-shot opus 2026-04-20 14:39:49 -04:00
ios One-shot opus 2026-04-20 14:39:49 -04:00
lib track last open book 2026-04-20 15:13:58 -04:00
macos One-shot opus 2026-04-20 14:39:49 -04:00
test track last open book 2026-04-20 15:13:58 -04:00
.gitignore One-shot opus 2026-04-20 14:39:49 -04:00
.metadata One-shot opus 2026-04-20 14:39:49 -04:00
AGENTS.md One-shot opus 2026-04-20 14:39:49 -04:00
analysis_options.yaml One-shot opus 2026-04-20 14:39:49 -04:00
DESIGN_GUIDE.md One-shot opus 2026-04-20 14:39:49 -04:00
LICENSE Add MIT license for open-sourcing 2026-08-04 14:15:20 -04:00
pubspec.lock One-shot opus 2026-04-20 14:39:49 -04:00
pubspec.yaml One-shot opus 2026-04-20 14:39:49 -04:00
README.md One-shot opus 2026-04-20 14:39:49 -04:00

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

flutter pub get
dart run build_runner build --delete-conflicting-outputs
flutter run

Verification checklist

Run after every change:

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.