← All templates

Medication Reminder

Health & Fitness · React + Node (Express) · 18 @molecule/* packages

Medisafe-like medication reminder with schedules, dose tracking, refill alerts, and adherence reports — with built-in Stripe-backed subscription tiers

Open in Molecule

What is inside

  • auth
  • notifications
  • reporting
  • reminders
  • subscriptions

Screens (16)

  • Landing /
  • Login /login
  • Signup /signup
  • ForgotPassword /forgot-password
  • ResetPassword /reset-password
  • Dashboard /dashboard (signed in)
  • Medications /medications (signed in)
  • AddMedication /medications/new (signed in)
  • MedicationDetail /medications/:id (signed in)
  • Schedule /schedule (signed in)
  • Caregivers /caregivers (signed in)
  • Settings /settings (signed in)
  • Profile /profile (signed in)
  • Notifications /notifications (signed in)
  • AdherenceReport /reports (signed in)
  • Refills /refills (signed in)

Data model (9 tables)

  • caregiver_notifications — id, caregiver_id, dose_log_id, refill_request_id, kind, payload, sent_at, read_at, …
  • caregivers — id, owner_user_id, caregiver_email, caregiver_user_id, permission, invite_token, accepted_at, created_at, …
  • devices — id, createdAt, updatedAt, userId, name, pushPlatform, pushSubscription, hasPushSubscription
  • dose_logs — id, schedule_id, medication_id, user_id, scheduled_at, scheduled_date, scheduled_time, taken_at, …
  • medication_schedules — id, medication_id, user_id, frequency_kind, time_of_day, times_of_day, days_of_week, interval_days, …
  • medications — id, user_id, name, generic_name, dosage_amount, dosage_unit, dosage, form, …
  • notifications — id, user_id, kind, title, body, href, payload, read, …
  • payments — id, createdAt, updatedAt, userId, transactionId, productId, platformKey, data, …
  • refill_requests — id, medication_id, user_id, pharmacy, days_supply_remaining, status, requested_at, contacted_at, …

API (8 handlers)

  • adherence api/src/handlers/adherence.ts
  • caregivers api/src/handlers/caregivers.ts
  • doses api/src/handlers/doses.ts
  • medications api/src/handlers/medications.ts
  • notifications api/src/handlers/notifications.ts
  • refills api/src/handlers/refills.ts
  • reports api/src/handlers/reports.ts
  • schedules api/src/handlers/schedules.ts

Subscription tiers

free / pro / team — gated by: maxAdherence, maxDoses, maxMedications, maxRefills, maxSchedules, advancedFeatures, canExport, retentionDays

Built from 18 @molecule/* packages

Browse all @molecule/* packages →

Required secrets

  • DATABASE_URL PostgreSQL connection string
  • VAPID_PUBLIC_KEY VAPID public key for push notifications
  • VAPID_PRIVATE_KEY VAPID private key for push notifications
  • MAILGUN_API_KEY Mailgun API key for email notifications
  • MAILGUN_DOMAIN Mailgun domain

The @molecule/* packages are Apache-2.0. The app you build from this template is yours to export and self-host. Licensing