Back to projects

Blushme - Private Cycle Journal

Blushme is a private, Vietnamese-first cycle journal that runs as an installable progressive web app.

What I Built

  • A calm daily view with a cycle ring, current phase, and countdown to the next period
  • One-tap logging for mood, flow, symptoms, notes, and optional BBT, cervical mucus, and LH tests
  • A calendar with logged and predicted periods plus an optional fertile-window layer
  • Weighted, outlier-aware predictions with confidence levels and a "show the maths" view
  • Insights for average cycle and period length, regularity, the last six cycles, and common symptoms
  • Email and password accounts with per-user data isolation, reset, and account deletion
  • Vietnamese and English localization with a reduced-motion-friendly design

Today and Predictions

Blushme today screen

Insights

Blushme cycle insights

Architecture and Privacy

Blushme is a React single-page app built with Vite and delivered as a PWA. Supabase provides authentication and Postgres storage, and row-level security ensures each user can only read and write their own logs. There are no ads and no analytics.

Tech Stack

  • Frontend: React, TypeScript, Vite, Zustand, i18next, Framer Motion
  • Backend: Supabase Auth and Postgres with row-level security
  • Delivery: Installable PWA for phone and desktop

Live Demo

Repository