today

RacePilot is what my marathon training planner grew into. I converted it so more people could use it, not just marathon runners but athletes training for all kinds of sports. A few friends of mine are training for triathlons, so it felt like a good moment to open the tool up to their sports too. Converting it was genuinely fun, because you get to rethink the whole user experience from scratch.
When you open RacePilot for the first time it asks what you train for, so it only shows you what is relevant:
π Road runner Β· 5K to marathon
ποΈ Trail runner Β· Hills and technical terrain
βΎοΈ Ultra runner Β· Beyond the marathon
ππ΄π Triathlete Β· Swim, bike, run
π΄ Cyclist Β· Road, gravel or track
π Swimmer Β· Pool or open water

Under the hood I essentially restructured everything so it works for multi-sport races. A triathlon, for example, is now handled as one race across swimming, cycling and running instead of three separate races, and every sport gets its own stats instead of one shared summary.
One feature I did not mention in the previous blog is a splits scanner. It uses OCR to read a screenshot of your Strava splits and pull the distances and paces straight out of the image, so you do not have to type them in by hand.
I also added localization: distances and paces now show in the athlete's own units, so people in the US see miles while I see kilometers.
On top of that I built a complete landing page and proper onboarding screens so everything is clear for new users, and I gave the whole thing a new name: RacePilot. There is no deep story behind the name, it just felt like a good fit for what the app had become.