Self-hosted medication and supplement intake tracker for web, designed with future Android notification support and possible Home Assistant integration in mind.
PillTracker is built as a privacy-first alternative to medication tracking apps that depend on cloud services or third-party storage for sensitive health-related data.
Warning
Early development
PillTracker is not production-ready and has no functional release yet.
The project has moved from pure planning into early implementation. Current work is focused on the M1 backend scaffold and the first vertical development slices.
Current status:
- Project scope definition (PSD)
- Software design documentation (SDD)
- Development environment and repository workflow
- Initial backend architecture planning
- Backend health endpoint scaffold
- SQLite persistence scaffold
- Generic CRUD proof slice
- Medication-domain CRUD
- Frontend scaffold
- Authentication and user model
- Encrypted backups
Active development happens on milestone and feature branches before being merged through PR back into main.
Most common medication tracking apps require cloud services and store highly sensitive health-related data on third-party infrastructure.
PillTracker aims to provide a privacy-first, self-hosted alternative with:
- Medication and supplement reminders
- meal-relative schedules
- inventory tracking and refill planning
- multi-user / household support
- web-based administration
- strong reminders for critical medication
- encrypted backups
- future Android support
- possible future Home Assistant integration
The current target architecture is:
- Frontend: React
- Backend: Node.js
- Database: SQLite
- Deployment: Docker / Docker Compose
Current rough milestone direction:
- M1: Backend scaffold, health checks, SQLite persistence, generic CRUD proof slice
- M2: API shape and medication-domain backend behavior
- M3: Frontend scaffold and basic administration UI
- M4+: Medication schedules, reminders, inventory, users, backups, and integrations
This roadmap is intentionally iterative and may change as implementation reveals better boundaries.
Concrete implementation documentation can be found in the corresponding branches till they get merged into main.
The project is still early and primarily used as a learning and architecture project for now.
Feedback, ideas, architectural discussions, and issue comments are welcome. The codebase is not yet stable enough for production use.
License to be determined.