GraphHopper is an open-source routing library and server written in Java and provides a routing API over HTTP. It runs on the server, desktop, Android, iOS or Raspberry Pi. By default OpenStreetMap data for the road network and elevation data from the Shuttle Radar Topography Mission is used. The front-end is open-source too and called GraphHopper Maps.