Self-hostable maps stack, powered by OpenStreetMap.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Michael Kirk 5d06127cbb
Merge pull request #281 from headwaymaps/mkirk/updates
dependency updates
2 days ago
.github/workflows [ci] avoid spurious rate limiting 2 months ago
assets Use <picture> hax to work around people using Github light themes on dark theme machines. 10 months ago
bin bump data tag 4 days ago
builds update to planet-v1.26 4 days ago
contrib Merge pull request #174 from kresp0/patch-2 9 months ago
git-hooks [transit] add gtfs_bbox to ci 2 months ago
k8s [k8s] regenerate all 4 days ago
services Fix quasar dev server startup. 2 days ago
.arg tell earthly we're not using any implicit ENV vars 3 months ago
.earthlyignore [transit] Support multiple transit regions in a single headway deploy 5 months ago
.env-example [www][transit] transit shows alerts 3 weeks ago
.gitignore gitignore .swp 7 months ago [docs] update to non-deprecated method 6 months ago
Earthfile docs 2 days ago Add a full planet markdown doc 9 months ago
LICENSE Relicense to apache 2.0 1 year ago Fix GitHub Actions status badge 5 months ago Update 9 months ago
docker-compose-with-transit.yaml [docker] allow longer startup time for otp 4 months ago
docker-compose.yaml [compose] sync docker-compose with docker-compose-with-transit 4 months ago


GitHub Actions status badge License badge GitHub last commit badge GitHub commit activity badge

World map image

Headway is a maps stack in a box that makes it easy to take your location data into your own hands. With just a few commands you can bring up your own fully functional maps server. This includes a frontend, basemap, geocoder and routing engine. Choose one of the 200+ predefined cities or provide your own OpenStreetMap extract covering any area: from a neighborhood to the whole planet.

See for more information about the build process.


Headway is currently capable of showing a map, searching for points of interest and addresses within an OpenStreetMap extract and providing directions between any two places within that extract. Supported modes include driving, cycling and walking. Transit directions are a work-in-progress.

System Requirements

Headway has been confirmed working on amd64 machines running Linux and macOS. The machine used for generation of the data files needs to have at least 8GB of memory, potentially more for larger areas. The requirements for running an instance of the stack are lower though. Expect to need around 4GB for a medium sized metro area. Additionally, you should expect to need 50GB-100GB of disk space during the build process.


Headway is available freely under the terms of the Apache License, version 2.0. Please consider opening a PR for any enhancements or bugfixes!