Steady

Healthcare, SaaS

Steady

A mood journal that never tells you how you feel

  • 10 sto log a feeling
  • 0analytics SDKs, ads, streaks
  • v3.6closed beta, live

The problem

Most mood trackers interpret, nag and harvest. For adults living with ongoing emotional-health conditions, and for the partners who love them, that is the opposite of help. My wife and I run Ritmann, a brand about couple mental health. Steady is the product we wished existed.

What I decided

Write the principles before the screens, and make them binding.

  • Ten-second rule: feeling first, everything else optional.
  • Observational, never interpretive. The app records; it does not diagnose.
  • Definitions never rewrite history.
  • Skipping is participating.
  • The tracked person owns every switch.
  • Calm surface, deep drawer.

The product

  • A mood slider, five energy levels, word families drawn from the circumplex model, so a feeling carries four dimensions without the person having to name them.
  • Everything stays on the phone. Optional backup to the user’s own Google Drive folder. Read-only views to show a psychiatrist or therapist at an appointment.
  • No ads, no analytics, no streaks, no red marks, no social features before there is funded moderation.
  • Closed beta with an invite code, a privacy page and terms, a feedback loop.

How it grew

It started as a single page on GitHub Pages. Then came the emotional-metadata engine and care-team views, then PDF export, medicine logging and a photo journey. A cloud-sync version on Supabase worked, and taught me that server plumbing was too heavy for a solo non-developer founder and contradicted “your data stays on your phone”. I retired it. Today it runs on Firebase for the tester allowlist only, with the user’s own Drive for backup, in closed beta.

Decisions I would defend

  • Retiring sync. The feature worked. It was wrong for the product. Removing it was the best product decision in the project.
  • Privacy-compatible metrics only. Beta exit criteria are retention, save time and restore success. Never session length or notification clicks.
  • The local-first pattern travelled. The optimistic, pending-queue approach proven here became the recommendation that fixed FleetSetu’s latency problem.