Skip to content
← Back to all work

Lean

A dependency-free, offline-first fat-loss tracking PWA I built for my girlfriend and myself. One HTML file, no framework, no build step, no subscription.

Vanilla JS · Service Workers · GitHub Pages · localStorage

Placeholder image for Lean

Problem

Every fat-loss tracker I tried was bloated with features I never used, hidden behind a subscription, or slow to open at the gym. I wanted something that loads instantly, works without signal, and asks nothing in return.

Approach

I built Lean as a single vanilla HTML/CSS/JS file with zero dependencies. A service worker makes it offline-first so it works on flaky gym wifi. Two profiles, mine and my girlfriend's, are distinguished by accent color. It carries real recipe data, logs futsal as a minutes-based activity, runs a daily checklist and fires multiple reminder notifications.

Stack

Vanilla JSNo framework tax for a single-screen tool.
Service WorkersOffline-first on gym wifi.
GitHub PagesFree static hosting with zero ops.
localStorageDevice-local data, no accounts, no backend.

Screens

Placeholder image for Lean
Placeholder image
Placeholder image for Lean
Placeholder image

Outcome

Lean is deployed on GitHub Pages with data stored per device in localStorage, so there are no accounts and no backend to maintain. It is in daily use by both of us.