Skip to content

Open source routing engine for OpenStreetMap. Use it as Java library or standalone web server.

License

Notifications You must be signed in to change notification settings

bikehopper/graphhopper

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BikeHopper

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

Configuring local BikeHopper router instance for the Bay Area

If you're actively making changes to our fork of GraphHopper, follow these steps.

  1. 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.

  2. 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 Routing Engine

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.

Community

We have an open community and welcome everyone. Let us know your problems, use cases or just say hello. Please see our community guidelines.

Questions

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 :)

Contribute

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.

Installation

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.

Docker

The Docker images created by the community from the master branch can be found here (currently daily). See the Dockerfile for more details.

License

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.

About

Open source routing engine for OpenStreetMap. Use it as Java library or standalone web server.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • Java 94.6%
  • JavaScript 4.3%
  • Other 1.1%