Below is a copy of the announcement I made on the OpenStreetMap community forum:
https://community.openstreetmap.org/t/openrailwaymap-vector-announcement/...
---
Hello fellow mappers,
Hereby I announce
[*OpenRailwayMap-vector*](https://github.com/hiddewie/OpenRailwayMap-vector), a
reimplementation of OpenRailwayMap using vector tiles. There was already discussion about
the future of OpenRailwayMap in
https://community.openstreetmap.org/t/future-of-openrailwaymap/126325 and this post is the
expanded announcement.
Over the past years I have had a wish to expand the existing OpenRailwayMap with more
features, specifically Dutch railway signalling. The signalling data is available in
OpenStreetMap, but was not visualized on the map. However, multiple pull requests with
these features and some technical improvement remained unanswered. (This is in no way
criticism upon the maintainers of OpenRailwayMap, I understand we are all persons
maintaining and contributing to the OpenStreetMap community in our free time.)
I decided to fork the OpenRailwayMap project, and start implementing the needed changes to
visualize the Dutch railway signalling on the map. In addition to the features, I wanted
to experiment what is possible with vector-based rendering of the data. This changes the
[technology stack of the
map](https://github.com/hiddewie/OpenRailwayMap-vector#architecture) significantly,
because the software between the database and the user was replaced with other software.
Mapnik and CartoCSS were replaced with Martin and a MapLibre *style specification*. The
frontend is no longer a slippy map displaying images, but rather a rich library
visualizing the vector data using the given style.
After porting the existing style verbatim to the vector-based technology, more became
possible in terms of development and user experience. It is easy to add signalling symbols
and train protection symbols on the map. The style is decoupled from the data, allowing
rendering improvements without changing the data in the database.
The visualized data has been expanded by railway signalling in The Netherlands, Germany,
France, Austria, Switzerland, Poland, Belgium, Finland, Spain, Luxembourg and Sweden.
Train protection systems that are documented and mapped all over the world are now
rendered. A big shoutout to the railway mapping community in Poland, France, Germany,
Sweden, Switzerland and Austria for creating a great amount of well-tagged data. During
this work the wiki has been expanded for certain well-tagged but undocumented data.
Official sources where OpenStreetMap tagging is derived from are also added to the wiki.
The user interface has improvements from using vector tiles. Instead of plain images for
each tile, the features on the map are interactive, allowing highlighting and popups with
details of the features. The legend is dynamic, listing the features for the current zoom
level in the selected style. Much more is possible, for example filtering, grouping and
selection of features and dynamically configuring a combination of visualized features,
but it still has to be built into the map.
The [data on the map](https://openrailwaymap.fly.dev/) is updated daily, and deployed for
Europe and North America. The railway data of the entire planet is imported, but I
currently do not have access to the server resources to render tiles for the entire planet
in a timely manner. The deployment is currently set up as a "dance" between
Github Actions and Fly\.io to update, build and deploy the tiles. This is work in progress
to get the entire planet tiles updated and deployed daily.
There have already been multiple contributions to this project. This is incredible and
much appreciated!
[
Contributions](https://github.com/hiddewie/OpenRailwayMap-vector/blob/mas...
in the form of issues, discussions, ideas, code or reviews are welcome!
The project is not finished and will probably never be. Making small changes, improvements
and trying to find the limits of the OpenStreetMap data, database and visualization tools
is what makes this project so much fun.
All this would not be possible without the original work on OpenRailwayMap by all the
original contributors. Huge thanks and credits to those who created and maintained this
beautiful work. I would love to contribute the work back into the upstream project.
Kind regards,
Hidde Wieringa