d1b18c5296dee0c01eb64b92d85af043ff57c998
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.
DailyYou
A private, on-device mood journal for Android and iOS built with Flutter. All data stays on your device — no cloud, no accounts.
Features
- Multi-step mood logging — guided wizard capturing mood, sleep, energy, positivity, and self-worth in one flow
- Activity tagging — log what you've been doing; custom activities supported
- On-device AI insights — weekly and monthly reflections powered by MediaPipe on-device LLM (no data leaves the device)
- Calendar heatmap — daily mood averages visualised across a month
- Reminders — optional local notifications to prompt daily check-ins
- Biometric lock — optional fingerprint/Face ID protection
- Dark mode — follows system theme
Tech stack
| Layer | Library |
|---|---|
| UI | Flutter 3.x, Material 3 |
| State management | flutter_riverpod 3.x (non-codegen) |
| Database | Drift 2.x (SQLite) |
| Charts | fl_chart |
| On-device LLM | flutter_mediapipe_chat |
| Notifications | flutter_local_notifications |
| Biometrics | local_auth |
| Export | pdf + share_plus |
Getting started
flutter pub get
dart run build_runner build --delete-conflicting-outputs
flutter run
Android requires core library desugaring — already configured in
android/app/build.gradle.kts.
Project structure
lib/
app.dart # Root widget, theme, routing
main.dart # Entry point
core/
database/ # Drift schema, DAOs, generated code
llm/ # LlmService abstraction + MediaPipe impl
providers/ # Riverpod providers (mood, activity, settings, LLM, insights)
features/
log_mood/ # Mood logging wizard screen + widgets
shared/
widgets/ # Reusable UI components
To-do
Core screens
- Bottom nav shell (home, history, insights, settings)
- History / calendar heatmap screen
- Day detail screen — list entries for a selected day
- Insights screen — weekly/monthly AI summaries
- Settings screen — reminders, biometrics, theme, data export
- Onboarding flow — first-launch walkthrough
Mood logging
- Edit existing entry (tap from day detail)
- Free-text note step in the wizard
- Tag selection step
Activities
- Activity management screen — add, reorder, delete custom activities
- Seed database with default activities on first launch
AI / insights
- Model download + progress UI
- Query mode — ask a free-form question about your data
- Prompt builder — serialize mood history into LLM context
Analytics
- Charts screen — mood trend line, activity frequency bar chart, sleep vs mood scatter
Infrastructure
- Local notifications — schedule and cancel reminders
- Biometric lock — gate app on fingerprint/Face ID
- PDF export and share sheet
- App icon and splash screen
Database schema
MoodEntries— mood (1–5), sleep minutes, energy, positivity, self-worth, optional noteActivities— built-in and custom activities with icon and colourEntryActivities— many-to-many join between entries and activitiesTags— free-form tagsLlmInsights— cached AI-generated insight text keyed by prompt SHA-256UserSettings— key/value store for app preferences
Languages
Dart
69.6%
C++
15.2%
CMake
12%
Swift
1.3%
HTML
0.9%
Other
0.9%