Skip to content

Game of Life

Status
Live
Proof
In production and private: it runs every day for one user, me.
Built with
Next.js 16BunTypeScriptSupabaseVercel
Checked

The Question

Why do I know more about my crypto portfolio than about my own life?

I had dashboards for everything financial. Markets. Positions. Returns. I had five years of daily metrics in a spreadsheet — mood, sleep, fasting, exercise. I had a thousand notes in Obsidian. I had a Garmin watch quietly logging every ride. What I did not have was a single view of whether I was actually living well.

What I Built

A personal life dashboard that aggregates data from Obsidian, Garmin, and GitHub into one surface, scored across four quadrants — Health, Wealth, Love, Happiness — broken into fifteen sub-domains. XP accrues from real-world outcomes, not input tracking. Levels unlock over time. Streaks hold or break. Achievements fire. A four-tier goal cascade (Life → Annual → Quarterly → Weekly) reconciles itself from the vault every morning.

Split pipeline. Bun and TypeScript sync workers on a VPS pull from every source every few minutes. Supabase in the middle. Next.js dashboard on Vercel. A nightly health-alert bot checks every connector and Telegrams me if anything is lagging.

What I Learned

Gamification cheapens almost everything it touches — except the parts of life that are genuinely hard to sustain without feedback. Showing up to a difficult relationship. Keeping the discipline on sleep when nothing visible is at stake. Returning to a skill when progress is invisible. The dashboard is not the product; the moment of opening it every morning is.

Status

In production and private: it runs every day for one user, me, so there's no public link.

Written aboutWhy the Bike WorksIn April I decided my projects died for want of a Strava. So I built one — and it measured effort. On the bike, the number is the result. In a business, the only number that counts doesn't exist until you ask.Read the essay →