Skip to content
Stride

Stride

A personal tracking tool built for one user - me.

2025Live

Most wellness apps try to do everything for everyone. They're bloated, they decide what you should care about, and they lock your own data behind a paywall. I wanted something simple - something that tracks what actually matters to me, shows the trends over time, and then gets out of the way.

I built this entirely with Claude - first app I've ever made. It took about 30 iterations to get here, and along the way I learned more about design and development than I thought I would. The motivation was selfish: I needed one place to track gym, tennis, mood, all of it. Nothing out there worked the way I wanted, so I built something that did. Some friends and I use it daily now - or at least we pretend to. It's built for us. That's the feature.

stridehealth.vercel.app
01

First Impression

The sign-up screen sets the tone. Animated light beams trace the card border, a subtle gradient sits behind it. Email and password auth with clear error states - no friction, just get in and start tracking.

Stride sign-up screen

Sign-up screen - animated border beams and clean email/password auth.

Mood tracker view

Mood tracker - trend line, calendar heatmap, and rolling averages.

02

Mood Tracker

Rate your mood from 1 to 10, add a note if you want, and let the patterns surface on their own. A line chart tracks recent trends, a calendar heatmap gives you the full year at a glance, and rolling averages show where your head's been over the last 7 and 30 days.

03

Activity Log

Log workouts by exercise, sets, reps, and weight. Activities like running, tennis, or swimming get tracked by duration instead. Over time, Stride plots your progression - so you can see whether you're actually getting stronger or just showing up.

Activity log view

Activity log - weight-based and duration-based exercise tracking.

Activities intensity chart

Intensity normalised to your personal best - a fair view of effort across any lift.

04

Activity Intensity

Rather than plotting raw weight, Stride calculates intensity relative to your personal best for each exercise. A tough bodyweight session reads the same as a heavy squat day. It's a fairer view of effort across different movements.

05

Progress Tracker

Track weight and BMI over time with clean line charts. Stat cards give you a quick read on where you stand, trend indicators show which direction you're heading. All data stays private - row-level security means every user only ever sees their own numbers.

Progress tracker view

Progress tracker - body weight and BMI trends with RLS-enforced privacy.

Behind the Build

Key Technical Decisions

  • Habits live as boolean columns on a single wide table. Adding a new habit is just an ALTER TABLE - no migration files, no schema changes in code.
  • Multiple exercises in one gym session share a workout ID. Easy to group, easy to display, no need for a separate sessions table.
  • Heavy chart components are lazy-loaded so the dashboard loads fast and charts stream in when you actually need them.
  • Intensity is scored relative to your personal best per exercise - a normalised view of effort that works across any lift.