Skip to content
Fetching contributors…
Cannot retrieve contributors at this time
65 lines (47 sloc) 2.94 KB

GraphHopper Build Status

Memory efficient data structures & algorithms on (geo) graphs


This software stands under Apache License 2


Solving shortest path (related) problems is the main goal. GraphHopper is a routing engine which makes implementing arbitrary shortest path problems in Java easier and much more memory efficient than a naive implementation. GraphHopper is tuned for road networks at the moment but can be useful for public transport problems in the future as well.


  • 100% Java
  • 100% Open Source via Apache License (=> business friendly)
  • Memory efficient (=> suited for big data)
  • Easy to use and small library with only a few dependencies
  • Latest algorithms and highly tuned to be very fast
  • Heavily tested

Routing Usage

The following command will make a part of Germany routable:

cd core; ./ unterfranken

  1. it downloads 40MB, unzips it to 450MB and creates road-files for graphhopper (40MB)
  2. it builds graphhopper
  3. and runs some shortest path queries on it

When executing the command again, then the existing graphhopper road-files and jars will be used. So, the UI should pop up fast (~2 seconds). After the UI popped up you can drag to move the map or scroll to zoom like in ordinary maps apps. Click once to select a departure and another click to select the destination. Then a route should pop up like in this SHINY ;) image from twitter

Visualization of

If you want to import full Germany do:

cd core; ./ germany

  1. For Germany it takes approx 25 minutes for the import and roughly 1 minute for the ugly&slow UI to pop up.
  2. At the moment the UI is a bit rough and simple so, don't click or drag too much as it takes some time for this large road network

Further Links

Jump to Line
Something went wrong with that request. Please try again.