Date: March 30, 2026 Current Phase: Phase 7 (Flutter App Development) — In Progress Previous Log: Day 4 (Phase 6 Complete)
| Task | Description | Status |
|---|---|---|
| ① Project structure setup | Directory structure, theme, constants | ✅ Done |
| ② Supabase integration + Auth service | Auth layer, Riverpod state | ✅ Done |
| ③ Routing setup | go_router, redirect logic | ✅ Done |
| ④ Splash / Onboarding screen | App entry flow, 3-page onboarding | ✅ Done |
| ⑤ Login / Register screen | Email auth UI, form validation | ✅ Done |
| ⑥ Home screen | Today's schedule, confirm/skip dose | ✅ Done |
| ⑦ Medication add screen | Medication form, cycle/time settings | ✅ Done |
| ⑧ Medication list / edit screen | 🔜 Next | |
| ⑨ Dose history calendar | ⬜ Pending | |
| ⑩ Statistics screen | ⬜ Pending | |
| ⑪ Notification settings screen | ⬜ Pending | |
| ⑫ Settings screen | ⬜ Pending | |
| ⑬ FCM/APNs push notification integration | ⬜ Pending | |
| ⑭ Interactive notifications (Yes/No) | ⬜ Pending | |
| ⑮ Google / Apple social login | ⬜ Pending |
Selected Calm Blue from three candidates.
| Option | Color | Characteristic |
|---|---|---|
| A — Calm Blue | #2B7FE8 |
Trust & stability. Global health app standard |
| B — Soft Teal | #0EA5A0 |
Natural & healing. Low visual fatigue |
| C — Lavender Purple | #7B5EA7 |
Differentiated & premium feel |
→ Calm Blue selected for global market appeal and medical app trustworthiness.
app_colors.dart)static const Color primary = Color(0xFF2B7FE8); // Primary
static const Color primaryLight = Color(0xFF5BA4F0); // Light
static const Color primarySurface = Color(0xFFE8F2FF); // Surface
static const Color done = Color(0xFF34C78A); // Dose taken
static const Color missed = Color(0xFFFF6B6B); // Dose missed
static const Color pending = Color(0xFFF9A825); // Pending
static const Color skipped = Color(0xFF9E9E9E); // Skipped
lib/core/constants.dart ← API URL, notification channel ID, SharedPreferences keys
lib/shared/theme/app_colors.dart ← Color system
lib/shared/theme/app_theme.dart ← MaterialApp theme (buttons, inputs, cards)
lib/main.dart ← App entry point
lib/app.dart ← MaterialApp.router
lib/core/router.dart ← go_router routing
lib/core/supabase_client.dart ← Supabase initialization singleton
Feature-based directory structure
4-layer separation per feature: data / domain / presentation / providers.
lib/features/
├── auth/
├── medications/
├── schedules/
├── dose/
└── notifications/