Files
maptool/docs/third-party-notices.adoc
T
randy 9223410b40
CI / check (push) Successful in 21s
CI / deploy (push) Successful in 16s
Swap flag emoji for real (square, bordered) SVG flags
Emoji flags are font glyphs, not shapes — no way to resize, border, or
tone them down to fit this app's controlled, hand-drawn-icon look
(same reasoning the topbar readout already settled earlier this
session). Vendored flag-icons' pre-cropped square SVGs (MIT) instead,
framed in a small rounded-square badge — the same convention
icons.js's MAP_MARKER_ICON already uses for framing a glyph, not a new
visual language.
2026-09-11 13:31:36 +02:00

4.4 KiB
Raw Blame History

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

https://github.com/maplibre/maplibre-gl-js

pmtiles (pmtiles.js)

4.5.0

https://github.com/protomaps/PMTiles

protomaps-themes-base

4.5.0

https://github.com/protomaps/basemaps

maplibre-contour (Overlays panel’s "Contour lines", public/js/contour.js)

0.1.0

https://github.com/onthegomap/maplibre-contour

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 (home-button)

0.0.1-d

https://github.com/nationalparkservice/npmap5-plugins/tree/main/home-button

NPS Overview Map (maplibre-gl-overview)

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 (© 2013 Panayiotis Lipiridis), attribution required (this notice satisfies that):

Library Version Source

flag-icons (just the square 1x1/ crop, only the 39 European countries lib/maptool/data/europe_countries.geojson lists — see public/js/offline_data.js)

7.5.0

https://github.com/lipis/flag-icons

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 0-255, 256-511 only)

protomaps/basemaps-assets (fonts/, OFL.txt included alongside)

National Park (Bold weight only, .woff2), topbar wordmark (.topbar__brand, public/css/style.css) — see docs/nps-resources.adoc

nationalparktypeface.com (Ben Hoepner, Andrea Herstowski, Jeremy Shellhorn / DO Studio) — "published for free use under the SIL Open Font License" per the site; no OFL.txt ships in its own download zips, unlike Noto Sans above

The online map style (not vendored, fetched at runtime when the "Online" layer is selected) is OpenFreeMap "liberty", built from OpenStreetMap data.

terrain.pmtiles (lib/maptool/pmtiles_builder.rb’s in-app regeneration, or the manual recipe in `docs/development.adoc) 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): the pmtiles CLI (go-pmtiles), installed as a static binary in the Dockerfile for `lib/maptool/pmtiles_builder.rb’s in-app offline.pmtiles/terrain.pmtiles regeneration. BSD-3-Clause, same as pmtiles.js/MapLibre GL above.

Tool Version Source

go-pmtiles (pmtiles CLI)

1.31.2

https://github.com/protomaps/go-pmtiles

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, bump PMTILES_VERSION in the Dockerfile and the version here.