Several marked routes running down one path drew as a single line, only the topmost color visible. maplibre-gl-lanes puts each route in its own lane; OSM relations already share exact vertices, which is all it needs. One LaneLayer across every picked country; click hit-testing and the highlight move to queryLane/setHighlight.
5.7 KiB
Third-party notices
Frontend libraries vendored under public/vendor/ instead of loaded
from a CDN, so the app keeps working with no internet access. All are
BSD-3-Clause licensed.
| Library | Version | Source |
|---|---|---|
MapLibre GL JS |
6.6.0 |
|
pmtiles (pmtiles.js) |
4.5.0 |
|
maplibre-contour (Overlays panel’s "Contour lines", |
0.1.0 |
Also vendored under public/vendor/, but not BSD-3-Clause like the
above — MIT-licensed per its own package.json (the monorepo’s
top-level LICENSE.md separately places the whole repo in the public
domain as a work of the US government; either way, no attribution is
required):
| Library | Version | Source |
|---|---|---|
NPS Home Button ( |
0.0.1-d |
https://github.com/nationalparkservice/npmap5-plugins/tree/main/home-button |
NPS Overview Map ( |
5.0.1 |
https://github.com/nationalparkservice/npmap5-plugins/tree/maplibre-gl-overview |
The overview map is vendored from an unmerged branch, not main (see
docs/nps-resources.adoc), and converted from its UMD dist build to a
plain ES module — no functional change except the module wrapper. It
was also patched for a MapLibre API break: it reads map.transform
(public in the MapLibre ~2.4 this plugin targets) to relax the
overview’s polar pan limit, but MapLibre 6’s Map no longer exposes
.transform at all — guarded to skip that (cosmetic) adjustment
instead of throwing when it’s absent.
Also vendored under public/vendor/ — MIT-licensed, attribution
required (LICENSE included alongside):
| Library | Version | Source |
|---|---|---|
maplibre-gl-lanes (offline hiking trails, |
1.3.0 |
Also vendored under public/vendor/ — MIT-licensed (© 2013 Panayiotis
Lipiridis), attribution required (this notice satisfies that):
| Library | Version | Source |
|---|---|---|
flag-icons (just the square |
7.5.0 |
Offline map text labels need font glyphs too (see
docs/architecture.adoc), vendored under public/vendor/fonts/ —
SIL Open Font License, not BSD-3-Clause like the above:
| Asset | Source |
|---|---|
Noto Sans Regular/Italic/Medium glyph PBFs (ranges |
protomaps/basemaps-assets
( |
National Park (Bold weight only, |
nationalparktypeface.com (Ben
Hoepner, Andrea Herstowski, Jeremy Shellhorn / DO Studio) — "published
for free use under the SIL Open Font License" per the site; no
|
The map style — OpenFreeMap
"liberty", built from OpenStreetMap
data — is used two ways (see docs/architecture.adoc): fetched live
at runtime for the "Online" layer, and as a one-time vendored snapshot
(public/vendor/liberty-style/liberty.json) that the "Offline" layer
repoints at local data instead. Its icon sprite is vendored the same
way, under public/vendor/liberty-sprite/ (ofm.json/ofm.png
@2x variants, from tiles.openfreemap.org/sprites/). Neither has
been re-checked against a specific upstream version pin the way the
table above does — re-fetch both from tiles.openfreemap.org if
Liberty’s own style/sprite ever visibly drifts from what’s vendored.
data/offline.pmtiles (lib/maptool/pmtiles_builder.rb’s in-app
regeneration, or the manual recipe in `docs/development.adoc) is
built at build time, not vendored, from
Geofabrik's per-country OpenStreetMap
extracts (ODbL).
terrain.pmtiles (same regeneration mechanism) is extracted at build
time, not vendored, from Mapterhorn — a
Protomaps-affiliated project publishing pre-built Terrarium-encoded
terrain as PMTiles. Per-region source licenses vary (CC-BY-4.0 and
similar); see
their own attribution
list for the full provenance.
Not a frontend asset like the above, but also baked into this app’s own
Docker image (not a separate container the way kiwix-serve/gpsd are —
see docs/deployment.adoc/docs/development.adoc): three CLI tools
lib/maptool/pmtiles_builder.rb shells out to for offline.pmtiles/
terrain.pmtiles regeneration.
| Tool | Version | License | Source |
|---|---|---|---|
go-pmtiles ( |
1.31.2 |
BSD-3-Clause |
|
Planetiler ( |
0.10.2 |
Apache-2.0 |
|
osmium-tool ( |
(Debian trixie’s packaged version) |
GPL-3.0 |
To update a vendored library: download its package (e.g.
npm pack <name>@<version>), replace the corresponding files under
public/vendor/<name>/, and update the version in this file. To
update go-pmtiles or Planetiler, bump PMTILES_VERSION/
PLANETILER_VERSION in the Dockerfile and the version here —
osmium-tool tracks whatever version Debian trixie currently packages,
nothing to pin on this side.