Most lifters track workouts in spreadsheets. I did too, until I got tired of squinting at tiny cells between sets and fixing formulas I'd accidentally broken. But I couldn't find an app worth using, let alone paying for, so I decided to try making my own. block log stores everything in localStorage on your phone. No account, no backend.
This was my first vibe coded app. I tried to approach it like a real product: ship an MVP, hand it to friends, watch what confused them, and fix it. It went through a few rounds of that.
what it does
You pick from built-in program templates or create your own, then log sets and reps each session. There's a workout heatmap, progress charts, a rest timer, and a searchable exercise database. It's a PWA, so you can install it on your phone and use it at the gym without signal.
The design is spartan on purpose. Zero border-radius on every element, all-lowercase copy. I wanted something you'd pick up and put down without thinking about it.
what I learned
I learned why so many apps have features that annoy me. Getting data input right for workouts is genuinely hard because every workout is personal, and mine turned out to be more nuanced than I expected each time I sat down to redesign something.
Vibe coding doesn't let you skip the real work, either. You still have to pick the tools, build a design system, scope in phases, and fix what you break along the way. The version that shipped is not the version in my head, and getting comfortable with that gap was its own lesson.