This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend I built MedAssist for my mother. She takes multiple prescribed medicines, but reading medicine labels and remembering which medicine to take at what time can be difficult for her. Because of that, someone often has to be around to remind her and help her with her medicines.
I wanted to build something that could make this a little easier. With MedAssist, a caregiver can take a photo of the medicine package, verify the details, and set the dose and reminder time. When it's time for a medicine, MedAssist shows her the actual medicine and gives her a simple Hindi voice reminder. If several medicines are due at the same time, they are shown one at a time.
Motto - See the medicine. Hear the reminder. Take the medicine.
I built MedAssist with Python, FastAPI, SQLite, HTML, CSS, and JavaScript, with Gemma at the core of the AI workflow.
Gemma is used in two places:
The medication dose and schedule are never decided by AI. They are entered and verified by the caregiver, stored in SQLite, and handled by a deterministic scheduler.
For the voice layer, ElevenLabs converts Gemma's Hindi reminder into speech. Medicine photo → Gemma → caregiver verification → scheduler → Gemma → ElevenLabs → patient
This keeps the AI useful while keeping the important medication decisions under human control.
Open innovation made it possible for me to build MedAssist around a real problem without having to train an AI model from scratch.
Using Gemma gave me an open-weight model that I could integrate directly into my application for understanding medicine package images and generating natural Hindi reminders. It also gave me the freedom to design the system around the needs of my mother, rather than building around the limitations of a closed, pre-packaged workflow.