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

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