This map shows all the blinking beacons from OpenStreetMap.
 
 
Go to file
Geodienst (Github Actions) cd1eb8d6c4 Updating the data via Github action 2024-12-23 01:54:54 +00:00
.github/workflows Update update_data.yml 2022-02-01 15:49:06 +01:00
LICENSE Create LICENSE 2017-08-31 18:02:29 +02:00
README.md Update README.md 2022-02-01 15:53:13 +01:00
data-full.json Updating the data via Github action 2024-12-23 01:54:54 +00:00
data.json Initial commit 2017-08-31 17:57:58 +02:00
demo.gif Add the demo gif 2017-09-20 10:36:12 +02:00
index.html Change attribution to HTTPS 2022-03-29 10:49:25 +02:00
leaflet.indexedfeaturelayer.js Only update the visible features 2017-09-15 11:44:50 +02:00
leaflet.light.js Add more data and allow the script to process items with several lights 2022-01-27 11:21:23 +01:00
leaflet.rangedmarker.js Render ALL the lighthouses! 2017-09-14 20:08:13 +02:00
test.json More precise parsing of seamark:light tags 2017-09-16 09:56:02 +02:00

README.md

Beacon map

This map shows all the blinking beacons from OpenStreetMap.

Demo time

More specifically, it asks the Overpass API for all elements with an seamark:light:sequence or seamark:light:1:sequence attribute, decodes these, and displays them as coloured circles on the map using Leaflet. It also tries to take the seamark:light:range and seamark:light:colour into account.

If you think a lighthouse or beacon is missing, please add or edit it on OpenStreetMap.

Overpass API

The current version uses an extracted dataset, but the code allows for directly querying the Overpass API. However, since a query like the one used here can take multiple minutes to complete it is not very useful do always do live queries. Currently we're updating the data every night.

Useful stuff

The leaflet.indexedfeaturelayer.js file contains an extension on Leaflet's GeoJSON layer that only add layers/features to the map that are (or are about to be) visible. It uses a spatial index to quickly query which features can be removed from the DOM, increasing performance.

leaflet.light.js contains my best guess on how a light sequence will look based on these descriptions. However, it might be inaccurate, and it tries to do its best with the sometimes not entirely consistent data from OSM.

Credits

This map is made by the Geodienst because it was a fun idea we wanted to try out. Feel free to fork this map and make your own visualisation of OSM data, or contribute improvements back to us.