This is a fork of GraphHopper used by the BikeHopper multi modal routing project. We have made some changes to bike routing and public transit routing to make the weights play nicely together to generate (mostly) sensible multimodal routes. This README contains some instructions for BikeHopper specific setup, and some excerpts from the main GraphHopper README. Please check out the main project for more details, this router is quite excellent
If you're actively making changes to our fork of GraphHopper, follow these steps.
-
You'll need a local OSM cutout for Northern California.
wget http://download.geofabrik.de/north-america/us/california/norcal-latest.osm.pbf
Place the OSM cutout at
graphhopper/data/norcal-latest.osm.pbf
. -
You'll also need GTFS data. Follow steps on this page, under "To Use the Feed and Ask Questions": https://www.interline.io/blog/mtc-regional-gtfs-feed-release/
Place the GTFS zip file at
graphhopper/data/GTFSTransitData_RG.zip
.
GraphHopper is a fast and memory-efficient routing engine released under Apache License 2.0. It can be used as a Java library or standalone web server to calculate the distance, time, turn-by-turn instructions and many road attributes for a route between two or more points. Beyond this "A-to-B" routing it supports "snap to road", Isochrone calculation, mobile navigation and more. GraphHopper uses OpenStreetMap and GTFS data by default and it can import other data sources too.
We have an open community and welcome everyone. Let us know your problems, use cases or just say hello. Please see our community guidelines.
All questions go to our forum where we also have subsections specially for developers, mobile usage, and our map matching component. You can also search Stackoverflow for answers. Please do not use our issue section for questions :)
Read through how to contribute for information on topics like finding and fixing bugs and improving our documentation or translations! We even have good first issues to get started.
To install the GraphHopper Maps UI and the web service locally you need a JVM (>= Java 8) and do:
wget https://github.com/graphhopper/graphhopper/releases/download/5.0/graphhopper-web-5.0.jar https://raw.githubusercontent.com/graphhopper/graphhopper/5.x/config-example.yml http://download.geofabrik.de/europe/germany/berlin-latest.osm.pbf
java -Ddw.graphhopper.datareader.file=berlin-latest.osm.pbf -jar *.jar server config-example.yml
After a while you see a log message with 'Server - Started', then go to http://localhost:8989/ and you'll see a map of Berlin. You should be able to right click on the map to create a route.
For more details about the installation, see here.
The Docker images created by the community from the master
branch can be found here
(currently daily). See the Dockerfile for more details.
We chose the Apache License to make it easy for you to embed GraphHopper in your products, even closed source. We suggest that you contribute back your changes, as GraphHopper evolves fast, but of course this is not necessary.