umap-project / umap

uMap lets you create maps with OpenStreetMap layers in a minute and embed them in your site.
https://umap-project.org
Other
1.14k stars 218 forks source link

OpenHistoricalMap #1871

Open 1ec5 opened 3 months ago

1ec5 commented 3 months ago

Is your feature request related to a problem? Please describe. Sometimes uMap is used to visualize historical events as an alternative to the popular ArcGIS StoryMaps service. The default OSM basemap can only portray extant features from the present day, so the user must georectify an old map and overlay it on top of the basemap for reference. While this approach is essential for some historical accounts, it would be great if uMap could provide a built-in alternative to OSM that includes historical geographical data.

Describe the solution you'd like uMap could allow the user to set OpenHistoricalMap as a basemap instead of OSM. Or perhaps it could allow a map to include both OSM and OHM as togglable layers.

Additional context OHM provides an official vector tile server and several premade stylesheets based on these tiles. If you choose to integrate an OHM style into Leaflet via maplibre-gl-leaflet, an interactive time slider is also available as a Leaflet plugin, or a custom one could be implemented in uMap for better integration with the rest of the UI.

1634 tracks adding support for OSM vector tiles. Perhaps you could work with OHM’s tiles and stylesheets beforehand, so that uMap will be ready once OSM’s vector tiles are available.

yohanboniface commented 3 months ago

If OHM provides raster tiles, it's easy to add a custom background in uMap:

image

1ec5 commented 3 months ago

Sorry, OHM can’t provide raster tiles, because we’d have to render approximately 27,000 sets of raster tiles, one tileset for each day in history, with more days getting mapped every day. 😱 Instead, we provide a single cumulative set of vector tiles that you can filter by date (or any other criteria) on the client side. But you can keep using Leaflet by installing the maplibre-gl-leaflet plugin.