A privacy-focused, offline-first Progressive Web App (PWA) to track fevers and medication schedules for your family. Built with React 18 and Vite.
https://jzfdav.github.io/fever-tracker/
- 100% Local: All data is stored on your device using LocalStorage.
- No Signup: No accounts, no passwords, no cloud servers.
- Offline Ready: Works completely offline without internet.
- Interactive Charts: Visualize temperature trends over the last 24 hours.
- Fever Insights: Automatically calculates max temperature, trends (rising/falling ↗/↘), and duration.
- Episodes: Automatically groups logs into "episodes" based on time gaps.
- Dose Tracking: Log exact medication names and dosages.
- Smart Reminders: Intelligent countdowns based on specific medication intervals (e.g., Ibuprofen 6h, Paracetamol 4h).
- Safety Warnings: Visual indicators preventing accidental early dosing.
- Browser Notifications: Get notified when it's safe to give the next dose.
- Multiple Profiles: Track unlimited family members (e.g., BABY, Self, Spouse) separately.
- Customizable: Add custom names for each profile.
- Theme Toggle: Switch between Dark (default) and Light modes.
- Backup & Restore: Export your data to a JSON file for backup or transfer to another device.
- Doctor's Report: Generate and share a text summary of recent fever and medication history.
- PWA: Installable on iOS (Add to Home Screen) and Android with offline support.
| Dashboard | Timeline | Input Modal |
|---|---|---|
| Settings | Dark Mode | Light Mode |
|---|---|---|
- Framework: React 18
- Build Tool: Vite
- Styling: CSS Variables (Dark/Light mode support)
- State Management: React Hooks + LocalStorage
- Testing: Vitest + React Testing Library (100% Critical Path Coverage)
- PWA: vite-plugin-pwa
- Deployment: GitHub Pages (Automated via GitHub Actions)
- Node.js 22+ (Recommended)
-
Clone the repository
git clone https://github.com/jzfdav/fever-tracker.git cd fever-tracker -
Install dependencies
npm install
-
Start Development Server
npm run dev
-
Run Tests
npm run test -
Build for Production
npm run build
- iOS: Open in Safari -> Share -> "Add to Home Screen".
- Android: Open in Chrome -> Menu -> "Install App".
GPL-3.0 License. This copyleft license ensures that this project and any modifications to it remain open source forever.