6 ms·
As a side project, I'm working on a route planning app for running. I'm a long distance runner and travel for work a lot, so I frequently find myself planning a
by samcrawford 7y ago
As a side project, I'm working on a route planning app for running. I'm a long distance runner and travel for work a lot, so I frequently find myself planning a run on one of the many existing apps at 5am in a new city whilst jetlagged.
My bugbear is that all the existing apps suck. I want a way to say "give me a running route that lasts approximately 10km and is as scenic (greenery, water, mountains, etc) as possible, with few road crossing and is as safe as possible". Maybe I can even pick from the top 3 options. Existing apps can't do any of this.
This data is readily available (or can be derived) for many countries using the wonderful openstreetmap and other public sources (e.g. national hiking trail routes).
I've adapted the brilliant Graphhopper routing engine to handle the routing algorithm and alternative routes selection. PostGIS (with OSM + other data loaded) is used under the hood to generate weights for each of the "ways" (edges in OSM-speak) for each of my variables (e.g. greenery). I'm using Leaflet and leaflet-routing-engine on the frontend currently, but would like to make it into a native Android/iOS app in the future.
- ultrarunner 7y agoI've had this thought. I'm intrigued! Strava has a "Strava Local" but it appears to be automated and is, frankly, bad. Would love to see what you come up with!
- samcrawford 7y agoI think Strava Local is curated, but I agree with the 'frankly, bad' part of your comment. For my home city of London it has a few of the major landmark routes, but doesn't have anything near my house, nor does it have any of the less obvious but more fun local routes. My frustration with Strava is that they have SO much good data, yet they do so little with it.
- zimpenfish 7y ago> My frustration with Strava is that they have SO much good data, yet they do so little with it. Whereas my frustration is that they have mountains of bad data (and we're sometimes talking egregiously bad here - segment times for runs that are >10,000mph etc.) which they do nothing about. It's a trivial data hygiene problem to note that, e.g., if an activity is marked as "running" and the average speed is 20mph+ over an hour, that's bullshit.
- kinow 7y agoNot much into running, more gym and judo. But have been traveling a lot recently, and running would be easier than finding a gym or dojo for me. I had a look around in my last trip to the UK for short circuits with 5 to 10 KM, flat, not much obstacles, but couldn't find any. Would be even better if I could also find some markers around the map indicating things like pull up bars or abs bench.
- jerezzprime 7y agoI've wanted to build something similar for both cycling and motorcycling. There is an app for motorcycling that works ok, but it would be a fun project. Is this open source anywhere? I struggled to get started with working with road data and getting that into a route planning system.
- rorykoehler 7y agoKomoot is pretty decent
- samcrawford 7y agoI suspect you're referring to https://kurviger.de/en https://kurviger.de/en for motorcycling. This uses Graphhopper's builtin round-trip functionality (it was incorporated by the author of that motorcycling route planner). You can find more about the Graphhopper API here https://docs.graphhopper.com/#operation/getRoute https://docs.graphhopper.com/#operation/getRoute, and it's completely open source at https://github.com/graphhopper/graphhopper https://github.com/graphhopper/graphhopper The motorcycling round-trip algorithm is quite crude, it relies on a user to pick a heading and then points N points in a circle on that heading and builds a route between them. It does not take into account any features of the map (e.g. forests, rivers, obstructions, etc). It's sufficient for longer distances though, but struggles on shorter distances. My project isn't open source yet, but I hope to make it so if/when I finish it!
- buzzdenver 7y agoAre you on Strava? In new cities I just look at their HeatMap to see where the locals are running.
- samcrawford 7y agoThe heat map is a nice visualisation for the vast amount of data that Strava has, but I don't find it useful for planning runs as an individual. It pretty much just shows where the major roads are in cities (which ironically is what I want to avoid). Strava's more recent "draw your route" feature is quite cool, but again it requires that you know the area and does not take into account the features of the land.
- bartkappenburg 7y agoTry imaginerun.com. Imagine run wants to inspire people to start walking or running. The free app creates (three) possible routes via gps based on the distance and pace you set. All routes start and end at your current location, no matter where you are. The app is navigating you, so you can’t get lost at a place you are not familiar with.
- samcrawford 7y agoThanks, this is the best one I've seen by far! The fact that they let you build round-trip routes is a first. That said, the app would timeout if I tried to build a route over 15km long. Also, it doesn't seem to prefer scenic routes - it has me running on busy streets in London when there's the Thames very close by.
- zimpenfish 7y ago> The free app Although it appears you have to create an ImagineRun account to use it which means this goes straight into the "nope" bucket for me.
- justinchan 7y agoThat’s neat. Reminds me of this episode of a Smart Cities podcast where someone talked of building (or built?) a Google Maps equivalent that optimized for pleasure instead of time. One thing that was mentioned was a way to crowdsource data on which routes or POI people most enjoyed walking across. Could use that data to help decide the weights on the graph