openrouteservice
A customizable, performant routing service using OpenStreetMap data. Provides directions, isochrones, matrix calculations, and more via REST API.
Smart Download
Visit Project Homepage
No installer available yet — head to the source repository
Free, self-hosted routing service based on OpenStreetMap with directions, isochrones, and matrix APIs.
Core Features
- Multi‑modal routing (car, bike, foot, etc.) with turn‑by‑turn directions
- Isochrone generation for reachability analysis
- One‑to‑many, many‑to‑one, and many‑to‑many distance/time matrices
- Coordinate snapping to road network
- Graph export for different transport profiles
What It Can't Do
- •Health/status endpoints are only available on self‑hosted instances, not the public live API. 2. First run requires downloading OSM data and building the graph, which is memory‑intensive. 3. Default configuration uses a small test OSM file for Heidelberg; you must configure your own data source for production.
Use Cases
- Last‑mile delivery route optimization
- Tourism itinerary planning and accessibility mapping
- GIS integration for custom routing analysis
- Cost‑saving alternative to commercial routing APIs
OpenRouteService is a high-performance Java-based routing service that leverages OpenStreetMap data to offer global spatial services. It supports multiple transport modes (car, bike, foot, etc.) and provides endpoints for directions, isochrones (reachability areas), distance/time matrices, coordinate snapping, and graph export. Built on a forked version of GraphHopper 4.0, it can be easily deployed via Docker with built-in health and status monitoring. The service is highly customizable, allowing users to configure profiles, speed limits, and elevation data. It is ideal for developers, logistics companies, and GIS enthusiasts who need a free, self-hosted alternative to commercial APIs like Google Maps or Mapbox.
Tags
Getting Started
Download installer
Click the button above to download the installer for your system
Install the software
Double-click the downloaded installer and follow the prompts
Step 1: Install Docker and Docker Compose
Step 2: Create data directories: `mkdir -p ors-docker/config ors-docker/elevation_cache ors-docker/graphs ors-docker/files ors-docker/logs`
Step 3: Download the latest docker-compose.yml: `wget https://github.com/GIScience/openrouteservice/releases/latest/download/docker-compose.yml`
- Step 1: Install Docker and Docker Compose
- Step 2: Create data directories: `mkdir -p ors-docker/config ors-docker/elevation_cache ors-docker/graphs ors-docker/files ors-docker/logs`
- Step 3: Download the latest docker-compose.yml: `wget https://github.com/GIScience/openrouteservice/releases/latest/download/docker-compose.yml`
Checksum not available
This project has not published a SHA-256 checksum on its GitHub Release page
SHA256 Checksum
No checksum available
Download directly from GitHub Releases and verify file integrity yourself
All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.
Open Source Transparency
View GitHub SourceUninstall Info
Run `docker compose down` to stop and remove containers. Delete the `ors-docker` directory to remove all data.
No Extra Dependencies
Ready to use after download. No additional runtime required.
Having issues? Check the FAQ below
5 FAQs
Similar Projects
code-server
Run VS Code in your browser, on any device with a consistent development environment.
traefik
Traefik is a modern HTTP reverse proxy and load balancer that makes deploying microservices easy.
pocketbase
PocketBase is an open source Go backend that includes embedded SQLite with realtime subscriptions, built-in file & user management, admin dashboard UI, and simple REST API. Can be used as standalone app or Go framework.