Pacelog
2026A training log built around one question: am I actually getting fitter?
TypeScriptReactPostgresCharts
Things I built because the existing option annoyed me. Each one starts with the problem, not the stack.
A training log built around one question: am I actually getting fitter?
A token-first component library that made dark mode a config change.
A worker supervisor that makes silent background-job failures loud.
An offline-first race pace calculator for the start line.