I created an open source GPLv3 nwjs desktop application called BikeTourPlanner for offline planning of bicycle tours based on the GraphHopper routing engine, its web interface, and OSM2VectorTiles. End-user documentation can be found on the github io BikeTourPlanner project page.
The project is implemented on my GraphHopper master branch and includes a few bicycle related improvements to the GraphHopper routing engine, which did not make its way into the master tree, such as summarization of way type information, smoothing of elevation data, and the possibility to dynamically influence the weighting based on elevation and nice level.
The GUI extensions are implemented by extensions of the Graphhopper web project.
I intend to create a first official release for end-users once the OSM2VectorTiles project has released a license friction free tile set. According to the O2M2VectorTiles postings this might be by the end of this year. In the meantime software developers or technically skilled people should be able to play around, test and use the application by following the developers documentation at the end of the github source project page.
The bicycle related map features are implemented in two vectortiles overlays. The project git contains data for the Liechtenstein area. I have theses overlays available for world wide coverage, but they are currently not available online anywhere as I do not have server space with sufficient bandwidth for the hosting the 1.5GB data. As far as I understood the github documentation for releases it should be possible to include them to a release, so I intend to try it this way.
The tested platforms are Linux (Ubuntu 16.04 64 bit) and Microsoft Windows 64 bit, 32 bit should work as well.
Implementation of support for Mac OS X 64-bit should be possible with a few changes. Pull requests, bug reports and feature extension ideas for the future are welcome!