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.