Dev
Tech Stack
The libraries and services this app is built on
- MapLibre GL v5 via React Map GL — the map renderer everything else layers on top of
- nuqs — shareable URL query-string state (viewport, viz toggles, sources)
- jotai — local persistence (
atomWithStorage) for API keys and UI collapse state - shadcn/ui on Base UI — component primitives (dialogs, dropdowns, tooltips, tabs) and styling, plus Tailwind CSS v4
- onthegomap/maplibre-contour — contour lines
- geomatico/maplibre-cog-protocol — direct in-browser Cloud-Optimized GeoTIFF streaming
- geotiff.js — parses GeoTIFF responses client-side (WMS float32 DEM bridge, COG metadata)
- Turf.js — geospatial calculations (bounds, truncation, geometry helpers)
- chroma.js — color-ramp interpolation behind every hypsometric/derivative-mode color ramp
- Terra Draw — the Drawing tool's sketch/measure primitives, via its own MapLibre GL adapter
- @esri/wayback-core — the SDK behind ESRI Wayback's release catalog and per-tile capture dates
- Coachmark — the guided product tour (spotlight, step popovers, branching paths)
- Sugar High — lightweight syntax highlighting (Settings dialog code snippets, GDAL export commands)
See Setup for how these fit together (state architecture, custom MapLibre protocols, no-backend design).