MedTrack is a local-first medication adherence app built for hackathon demo use.
It helps users stay on schedule with reminders, log dose outcomes, review adherence, and access safety-focused guidance.
- Medication management (add/edit/delete/deactivate)
- Flexible schedules (fixed times, every X hours, days of week, PRN)
- Local reminder notifications with snooze options
- Due-dose action flow: Taken / Snooze / Skip
- History + filters + status chips
- Safety Check + Missed Dose Guidance
- Emergency Card with one-tap share text
- Demo mode for judge walkthrough
MedTrack is a prototype and not medical advice.
Guidance is not exhaustive. Always confirm medication decisions with licensed professionals.
- TypeScript
- React Native + Expo
- Expo Router
- SQLite (
expo-sqlite) - Expo Notifications (
expo-notifications) - Expo Camera (
expo-camera) @expo/vector-iconsreact-native-safe-area-contextdate-fns
No backend required (local-first).
txt MedTrack/ app/ components/ lib/ app/ db/ notifications/ theme/ assets/
Prerequisites 1.Node.js 18+ (or 20+) 2.npm 3.Expo Go app on your phone (iOS/Android) 4.Phone and laptop on same Wi-Fi
Steps 1.git clone https://github.com/sdg5-hub/HopperHackathon2026.git 2.cd HopperHackathon2026/MedTrack 3.npm install 4.npx expo start --lan --clear
Then:
1.Open Expo Go on your phone. 2.Scan the QR code shown in terminal.
->Onboarding ->Welcome + disclaimer ->Notification permission step ->Profile setup step ->Finish step ->Medication Management ->CRUD for medications ->Schedule configuration ->Warning tags ->Optional barcode scan to prefill fields ->Reminder Engine ->Local scheduled notifications ->Resync on updates ->Snooze support ->Due-dose modal integration ->Adherence + History ->7-day adherence % ->Streak ->Dose status timeline ->Filters and status chips ->Safety + Emergency ->Safety rules overview ->Missed-dose guidance ->Emergency info card and share action
From Profile:
Load demo data + schedule near-future reminder Clear demo data (removes only demo records)
Data is stored locally on device (SQLite/local settings) No remote server required No third-party medical data API used in prototype mode
Expo won’t start / hangs -> pkill -f "expo|metro|react-native|node" || true -> rm -rf .expo .expo-shared -> npx expo start --lan --clear --port 8081
iOS Expo Go cannot connect Ensure same Wi-Fi Disable VPN Fully close/reopen Expo Go Rescan latest QR
If you’re collaborating:
git checkout main git pull origin main