unit-of-trust
← back to the lab

Plover.

A running-readiness app I took from a Jupyter notebook to a deployed multi-user product in about twelve days, leaning hard on AI agents.

Python/FastAPI/React/Next.js/Claude Code

What it is

Plover reads the data your running watch already records and surfaces the two or three things that changed this week — a mileage spike, a fading stride, heart rate drifting at an easy pace — each with an honest confidence level on it. It's not an injury predictor, and it doesn't pretend to be. A Python pipeline does the math; a FastAPI backend serves a React app and a Next.js marketing site, both deployed. Currently in private beta at plover.run, with my own training data still being backfilled.

How I built it with AI

Notebook to deployed app in about twelve days, mostly with Claude Code writing the implementation while I made the product and calibration calls. What made that feel safe was the verification I put around the agents. A backtest runs the actual product code and fails if a refactor changes the output by a single byte. A CI gate checks that the incremental pipeline matches a full recompute. Another fails the build if the marketing copy drifts toward injury-prediction language. With those in place I didn't have to re-read every line an agent wrote to trust it.

For the full story — the notebook origins, the data-literacy work, the design evolution, and the architecture — see the case study.