Personal project · Google Play
MyMoodBetter
A private, offline mood tracker for Android. Log mood, energy, focus and gratitude in one daily check-in, watch streaks and patterns build, and keep your data yours. Live on Google Play, built solo with Flutter and Claude Code.
Screens
Light mode



What it does
v1.4One short check-in a day, four dimensions at once — the combination turns a mood log into a picture of the whole day.
- Mood, energy, focus and gratitude in every entry.
- Streaks and the past seven days at a glance on the home screen.
- Insights: period averages, trend against the previous period, and your best and hardest weekday.
- Full journal history, organised by month.
- Export to PDF or CSV, and back up to your own Google Drive.
- Warm light and dark themes, plus a guided first-run walkthrough.
Stack
Solo buildOne Flutter codebase for Android, offline-first on SQLite. No account, no servers — backups go straight to the user's own Google Drive.
Development insights
2026Built with AI, managed like a delivery team
The app was built end to end with Claude Code, and the process went through the same evolution this site did: I started with a heavy GSD (get shit done) workflow, found the ceremony cost more than it returned, and settled on a lean loop instead — plan the phase, execute one step, verify, stop.
The v1.4 redesign came from a Claude Design handoff: six screens re-specified, then implemented against a shared component system. AI made the writing fast; the gates — plan, one step at a time, verification and UAT before moving on — are what kept the result shippable.
Free first, paywall later
The first release gated premium themes and auto backup behind in-app purchases. At around fifty installs — nearly all closed testers — that was charging for trust the app had not earned yet. v1.4 un-gates everything: all ten themes free, backup free. The billing code stays in the app, dormant; the plan is to reintroduce a paywall around 500–1000 real users, anchored by extended insights. One constraint locks the design: you cannot re-gate what was already free.
Shipping is the easy half
The app is live and stable; the open problem is distribution. I have no marketing channel yet, and discovery — not engineering — is what stands between a finished product and real users. That is the next milestone: not a feature, but reach.