OpenRailwayMap vector tiles
See the codeThis repository contains the visualization of railway infrastructure, speed limits, train protection, electrification and railway gauges using vector-based tiles and a web-based user interface.
Documentation can be found on the OpenStreetMap Wiki.
This repository aims to contain all code, configuration and tooling for the OpenRailwayMap.
A number of changes have been made from the upstream OpenRailwayMap-CartoCSS project:
Upstream changes will be merged into this project.
The API has been adapted from the OpenRailwayMap API. The API powers the search in the OpenRailwayMap UI, and provides facility (stations, halts, tram stops, yards, sidings, crossovers, including disused, abandoned, razed, proposed and under construction) searches by name and reference and milestone searches by combination of line number and mileage. The searches are full text, based on PostgreSQL's full text search functionalities.
The API documentation can be found at https://openrailwaymap.app/api.html. You can also view the raw OpenAPI specification.
Presets for JOSM and Vespucci are generated for mapping assistance. The preset is available for download on https://openrailwaymap.app/preset.zip. The preset is also available directly from the Tagging Presets register in JOSM Preferences. Vespucci can use the same presets for mobile mapping.
Contributions are welcome!
There are multiple ways to contribute to this project:
View the contribution documentation for details.
To run the OpenRailwayMap locally, you can import OpenStreetMap data and run the tile and web server locally.
View the setup documentation for details.
The deployment documentation describes how the OpenRailwayMap is deployed to https://openrailwaymap.app using Github Actions, Cloudflare and a server running the software. View the usage policy of the OpenRailwayMap services.
Copyright © 2024–2025 Hidde Wieringa
The original map style (CartoCSS) is copyright © 2017–2019 Michael Reichert
The original map style (MapCSS) is Copyright © 2012 Alexander Matheisen
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
JavaScript
75.3%
HTML
8.0%
Lua
7.1%
PLpgSQL
2.9%
Python
2.3%
CSS
2.2%
Hurl
1.5%
OpenRailwayMap vector tiles
See the codeThis repository contains the visualization of railway infrastructure, speed limits, train protection, electrification and railway gauges using vector-based tiles and a web-based user interface.
Documentation can be found on the OpenStreetMap Wiki.
This repository aims to contain all code, configuration and tooling for the OpenRailwayMap.
A number of changes have been made from the upstream OpenRailwayMap-CartoCSS project:
Upstream changes will be merged into this project.
The API has been adapted from the OpenRailwayMap API. The API powers the search in the OpenRailwayMap UI, and provides facility (stations, halts, tram stops, yards, sidings, crossovers, including disused, abandoned, razed, proposed and under construction) searches by name and reference and milestone searches by combination of line number and mileage. The searches are full text, based on PostgreSQL's full text search functionalities.
The API documentation can be found at https://openrailwaymap.app/api.html. You can also view the raw OpenAPI specification.
Presets for JOSM and Vespucci are generated for mapping assistance. The preset is available for download on https://openrailwaymap.app/preset.zip. The preset is also available directly from the Tagging Presets register in JOSM Preferences. Vespucci can use the same presets for mobile mapping.
Contributions are welcome!
There are multiple ways to contribute to this project:
View the contribution documentation for details.
To run the OpenRailwayMap locally, you can import OpenStreetMap data and run the tile and web server locally.
View the setup documentation for details.
The deployment documentation describes how the OpenRailwayMap is deployed to https://openrailwaymap.app using Github Actions, Cloudflare and a server running the software. View the usage policy of the OpenRailwayMap services.
Copyright © 2024–2025 Hidde Wieringa
The original map style (CartoCSS) is copyright © 2017–2019 Michael Reichert
The original map style (MapCSS) is Copyright © 2012 Alexander Matheisen
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
JavaScript
75.3%
HTML
8.0%
Lua
7.1%
PLpgSQL
2.9%
Python
2.3%
CSS
2.2%
Hurl
1.5%