Cycling Companion: how I created the tool I was missing for my bike rides

How many times have I found myself in the middle of a bike ride, empty water bottles and a growling stomach, desperately searching for a resupply point? Too often. This recurring frustration pushed me to develop Cycling Companion, a free web application that transforms cycling route preparation.
The problem cyclists face on the road
When I head out for long rides, whether bikepacking, training or ultra endurance racing, resupply management quickly becomes a critical issue. You don’t need to be far from home to face this problem.
The issue is that when you’re riding, especially as fatigue builds up, our analytical and search abilities drastically decrease. What seems obvious on a map at home becomes a puzzle when you’re on the road, with heavy legs and a foggy mind. Add difficult weather conditions - rain, wind, cold - and the simple search for a grocery store can turn into a nightmare.
Cemeteries, for example, are excellent water sources for cyclists, but hard to spot when you don’t know the area. Small village shops sometimes close at unpredictable hours. And what about public fountains that don’t appear on any standard road map?

My solution: anticipate rather than endure
Faced with these repeated difficulties, I developed a different approach: why wait until you’re thirsty or hungry to look for a resupply point? Why not identify these resources beforehand, from the comfort of my office, and integrate them directly into my GPS track?
The idea came to me while preparing the Istraland. Instead of simply tracing my route, I started manually noting grocery stores, fountains and other points of interest along the course. The result was stunning: no more stress, no more hasty improvisation, just planned stops at the right places.
But this manual method was tedious and time-consuming. I sometimes spent more time searching for resupply points than planning the route itself. That’s when the idea for Cycling Companion germinated: what if I could automate this search and enrich my GPS tracks with just a few clicks?

Cycling Companion: the tool I developed
Cycling Companion was born from this personal frustration. The application allows you to import a GPX track (whether it comes from Komoot, Strava, Garmin or others) and instantly display all relevant points of interest along the route. With one click, I can visualize grocery stores, water points, pharmacies, bike shops or accommodations located near my route.
What makes the tool particularly practical is its quick profile system. Need water? One click on “need water” and only cemeteries, fountains and water points appear. Want to eat? The “eat” profile displays grocery stores, bakeries and restaurants. This targeted approach avoids information overload and allows you to focus on your real needs of the moment.
The application automatically enriches the roadbook with cumulative distances, remaining elevation gain and allows you to add custom waypoints. No more juggling between multiple tools: everything is done in a single, intuitive interface optimized for cycling route preparation.
The choice of local storage was crucial for me. No account needed, no data sharing: everything stays in the browser. My tracks and preferences are automatically saved and I find them when reopening the application. I thus keep total control over my personal data without the complexity of account management.

Features
The application offers a set of features designed to simplify cycling route preparation:
GPX track management
- Import by drag-and-drop or file selection
- GPX format support (compatible with Komoot, Strava, Garmin, Wahoo, Suunto)
- Elevation profile
- Complete statistics: D+/D-, min/max altitudes, distances
- Start, finish and direction markers
- Export of enriched track with waypoints and POI
Real-time points of interest
- Uses Overpass API
- Specialized categories: water, food, hygiene, accommodation, repairs, health
- Quick profiles (“need water”, “eat”, “repair”) for targeted display
- POI counter by category
- Group display to maintain map readability
Waypoints and smart roadbook
- Add stages with a simple click on the track
- Automatic roadbook with cumulative distances, segments, remaining distance
- Calculation of altitude and remaining D+
- Map centering from roadbook
- Text export for sharing and printing
Navigation and mapping
- Press-and-hold button to temporarily hide GPX track
- Map style gallery with previews: CyclOSM, OpenStreetMap, CARTO Voyager, OpenTopoMap, Esri Satellite/Hybrid
- Real-time geolocation
- Instant recentering and lock history
- Fine layer management
User experience
- Progressive Web App (PWA) installable on mobile and desktop
- Automatic save in browser (localStorage)
- Responsive interface adapted to all screens
- No account creation or tracking: your data stays local
My experience after using it
Since I’ve been using Cycling Companion, my way of preparing and experiencing my rides has radically changed. Gone is the stress of improvised resupply searches: I now set off with precise mapping of all useful points along my route.
The most notable impact is the serenity it brings. Knowing there’s a fountain in 12 kilometers or an open grocery store in the next village completely changes your state of mind. I can focus on the pleasure of riding rather than survival logistics.

What I’m planning next
Cycling Companion is just the beginning of a more ambitious project. I have several priority developments in mind to enrich the user experience.
First, developing the site in multiple languages, so everyone can use it, regardless of their native language. Next, I’d like to add support for recording personal points of interest - imagine being able to save your favorite spots and find them on all your future routes.
GPS track editing directly in the application is also planned, as well as multi-day planning with automatic stages. This last feature would completely change the game for ultra cyclists and bikepackers who cover several hundred kilometers.
However, I will adjust these priorities based on user feedback. I’m eagerly awaiting your feedback to guide development toward the most concrete field needs.
My approach remains that of free software: the source code is available on GitHub under MIT license. I encourage contributions from the cycling and developer community. If you have improvement ideas or want to participate in development, don’t hesitate to check the GitHub repository or contact me.
The final goal? To keep the tool simple and useful for all cyclists.
Contributing
Interested in contributing to Cycling Companion? Here’s how you can get involved:
Getting started
- Fork the project on GitHub
- Create a feature branch:
git checkout -b feature/improvement - Make your changes and commit:
git commit -m 'Add new feature' - Push to your branch:
git push origin feature/improvement - Open a well-documented Pull Request
Ways to contribute
- Bug fixes and performance optimizations
- New POI categories for cyclists
- UI/UX improvements
- Translation to other languages
- Documentation and tutorials
- Feature suggestions and feedback
All contributions are welcome, whether you’re a developer, designer, or cycling enthusiast with ideas to improve the tool.