← HomeMy Pills

Self-initiated · React Native · TypeScript

My Pills — turning medication into a daily habit.

A self-initiated, end-to-end product built from problem framing through a shipped React Native MVP. My Pills treats medication adherence the way fitness apps treat workouts — streaks, frictionless daily check-ins, and a clear history — so the answer to “Did I take my pill today?” is always one tap away.

Role

Product strategy & UX

React Native engineering

AI-accelerated delivery

Scope

Zero-to-one MVP

Motion & notifications

Google Calendar integration

Status

Active · MVP shipped

30 commits · March 2026

GitHub →

My Pills Today screen showing daily progress and medication card

The problem: adherence fails quietly

Medication adherence is one of the most persistent failures in personal healthcare — not dramatic, just silent. People miss doses without realising, lose track of streaks, and have no reliable way to confirm whether they've taken something on a given day.

Existing solutions sit at the wrong ends of the spectrum: either hospital-grade clinical tools, or reminders buried inside overloaded health platforms. There was a clear gap for a focused, habit-first product that borrows the motivational mechanics of fitness apps — streaks, momentum, and effortless daily check-ins — without any clinical baggage.

Product strategy: borrow from fitness, not pharma

The core design bet was simple: if fitness apps can turn something as hard as working out into a daily habit, the same mechanics should work for medication. That meant anchoring the product around three principles.

1. Frictionless daily logging

Every interaction on the Today screen was designed to close in one tap. No confirmation dialogs, no multi-step flows. The fewer actions between opening the app and marking a dose taken, the higher the daily open rate.

2. Streak-based motivation

Streaks were treated as a first-class feature, not an afterthought. The flame animation and streak counter create a small but real cost to skipping — the same psychological lever that keeps people coming back to language and fitness apps. The target: a 7-day streak rate above 60% for active users.

3. Reminders that meet you where you are

Rather than in-app nudges alone, My Pills surfaces reminders through two channels: local notifications with interactive Take / Snooze actions, and optional Google Calendar events. The calendar integration trades some sign-in friction for long-term reliability — a deliberate choice to favour users who want reminders embedded in their existing workflow.

MVP: what shipped

The MVP scope was kept deliberately narrow: build the core habit loop end-to-end before expanding. Everything shipped supports a single daily ritual.

  • Medication list — add, edit, and deactivate medications with per-medication schedules
  • Today screen — one-tap logging with clear taken / pending / late states
  • Streak tracking — flame animation and consecutive-day counter
  • Reminders — local push notifications with Take / Snooze actions, plus Google Calendar integration
  • History screen — adherence overview with calendar view and dose log

Product surfaces

My Pills empty state inviting user to add first medication
Empty state
Add Medication form with schedule and weekdays
Add medication
Today screen with late dose and confirm action
Today · late state
History with streak and calendar
History & adherence
Settings with calendar toggle and about
Settings

Success metrics

7-day streak rate

> 60% of active users

Daily open rate

> 70%

Notification-to-action conversion

> 50%

Crash rate on streak screens

0 reports

What's next

The MVP proves the habit loop. The next phase focuses on completeness and resilience.

  • Missed-dose detection — explicit “missed” state and logic for days without a log entry
  • Multiple schedules — richer support for medications with different timings across the week
  • Onboarding — a guided first-run experience for new users
  • Cloud sync — moving beyond local-only storage for multi-device use
  • Platform parity — structured iOS / Android testing after the animation stabilisation

Kept out of scope for MVP: drug interaction warnings, pharmacy integrations, and family accounts — intentional constraints to ship fast and stay focused.