sul-dlss / earthworks

Geospatial discovery application for Stanford University Libraries.
https://earthworks.stanford.edu
Other
18 stars 3 forks source link

Implement Blacklight::Allmaps Plugin #1055

Open mapninja opened 2 weeks ago

mapninja commented 2 weeks ago

As the manager of geospatial data holdings, I would like to be able to allow users to "georeference" scanned maps from our collections, while ensuring that the georeferenced derivatives (actually there aren't derivatives, but I'm not sure what else to call them) become discoverable.

Blacklight::Allmaps plugin is a new plugin for Blacklight/Geoblacklight, that provided iiif-native georeferencing capabilities for scanned maps exposed in blacklight/geoblacklight-based search portals using Allmaps.org georeferencing infrastucture

Repo: https://github.com/bplmaps/blacklight-allmaps

Dev Docs: https://github.com/bplmaps/blacklight-allmaps/blob/main/doc/development.md

Erik Larsen's Geo4LibCamp presentation: https://docs.google.com/presentation/d/1Pn81E1JS0CLn10lZWCpv-hwWcYYwtJkpxiiU6To61P0/edit?pli=1#slide=id.g2712a92aa67_0_50

Implementation Example: not-yet-georeferenced item: https://geo.btaa.org/catalog/p16022coll205:265 Georeferenced Item: https://geo.btaa.org/catalog/p16022coll230:4229

mapninja commented 2 weeks ago

One shortcoming that I see in the current state of the plugin is that there is no native support for providing an Allmaps XYZ Tile Server endpoint for the georeferenced item. All viewing seems to be locked into the GBL/Allmaps viewer interfaces, using one of the mapping library extensions, such as Leaflet https://github.com/allmaps/allmaps/tree/main/packages/leaflet

The problem is that this requires a special plugin for every use case. Supporting XYZ tiles would be preferable, given it's universal implementation.

Implementing the XYZ tile server template links in "Web Services" might be an opportunity for our contribution to the project.

repo: https://github.com/allmaps/allmaps/tree/main/apps/tileserver

mapninja commented 2 weeks ago

If we wanted to implement actual exports, there is some work on that, here: https://github.com/allmaps/data-export