- Daily reminder scheduling via flutter_local_notifications (inexact, repeating at chosen time)
- Biometric lock gate on app launch with auto-prompt and manual unlock button
- Theme mode selector (System/Light/Dark) persisted to settings DB
- PDF export of full mood history shared via share_plus
- Android: POST_NOTIFICATIONS, USE_BIOMETRIC permissions; switched to FlutterFragmentActivity
The Gemma model requires Kaggle login/licence so direct HTTP download is
not possible. Replaces the download screen with adb transfer instructions,
a Scan button that checks the file on disk, and a Continue without AI bypass.
Also renames the Android package from com.example.dailyou to
net.stefwill.dailyou (build.gradle.kts, MainActivity.kt path + declaration)
and adds *.bin to .gitignore to keep model files out of the repo.
Adds a one-time download flow for the on-device Gemma 2B model (~1.1 GB)
with a progress bar, partial-download cleanup, and automatic navigation
to the app shell once the file is verified. App.dart now gates on
modelPresentProvider instead of onboarding state.
Adds a prompt builder that serialises 7-day mood/activity data, wires
InsightNotifier to call the on-device LLM directly (no user interaction),
caches results by prompt hash, and renders the analysis as a passive card.
Includes loading, empty (<2 entries), and error states with a force-refresh button.
Adds DayDetailScreen showing all entries for a selected day with
swipe-to-delete and an undo snackbar. CalendarScreen gains a tappable
day header (Today / Yesterday / Month Day) that pushes the detail screen.
Adds a month grid heatmap (colour-coded by daily mood average), prev/next
month navigation, and a scrollable entry list below for the selected day
showing mood, time, note, and metric chips (sleep, energy, positivity,
self-worth).
Introduces AppShell with an IndexedStack-backed NavigationBar (Today,
History, Insights, Settings). Stub screens added for Calendar, Insights,
and Settings; app.dart now routes to AppShell instead of LogMoodScreen directly.
Adds sleep/energy/positivity/self-worth tracking columns to the database
(schema v2 migration), a new 5-option StepScale widget, per-answer chips
at the top of the screen, a 2×2 activity grid chip, and a full step-by-step
wizard flow: mood → sleep (first entry today only) → energy → positivity →
self-worth → activities → review+save.
- Bootstrap ProviderScope in main.dart and move App to app.dart with light/dark theming
- Add initial LogMoodScreen with mood entry flow and shared activity/mood widgets
- Add kIsWeb guard in app_database.dart for drift web support
- Enable Android core library desugaring required by flutter_local_notifications 21.x
- Guard all async notifier state assignments with ref.mounted checks to prevent
use-after-dispose errors when providers are auto-disposed mid-operation