Sources · Methods · Architecture
Showing the Ring.
Every claim should be traceable to a dataset, a version, a refresh, and an honest statement of what it cannot tell us.
Inspect the source registryTwo routes.
Never one count.
Smithsonian PROF membership
Versioned records reproduce the published GVP definition: 688 Holocene volcanoes in 41 regions for the pinned 5.3.6 fixture. A changed version triggers explicit review.
Editorial Pacific journey
Six chapters begin in New Zealand and move clockwise. This sequence has no scientific start or end and can include contextual cases, such as Indonesia, without changing the GVP count.
Freshness is part of the fact.
Successful ingestions replace staging data atomically. A malformed refresh leaves the last known-good publication active.
Demonstration fixture. Live source freshness is unavailable.
One store.
Two ways to read it.
The cinematic map and four analytical workspaces serve different jobs. Every view resolves to the same provenance-aware PostGIS data.
Small, bounded, legible.
Map endpoints emit RFC 7946 GeoJSON. Invalid bounds and filters return application/problem+json; pagination and limits protect the public service.
GET /api/v1/atlas/volcanoesGET /api/v1/atlas/earthquakesGET /api/v1/atlas/boundariesGET /api/v1/atlas/tsunamisGET /api/v1/volcanoes/{volcanoNumber}GET /api/v1/search?q=…GET /api/v1/sources/statusGET /api/v1/metabase/resources/{resourceKey}POST /api/v1/metabase/guest-token
Absence is not zero.
Older eruption and tsunami records are less complete. Missing VEI, impact totals, or day precision stays null. Nearby boundaries are derived spatial context, never causal attribution. Recent earthquake feeds are revised and may include deletions.
- Historical trends
- Default to 1960 onward; users can expand the range with the coverage caveat visible.
- Dates
- Year, month, and day are independently nullable. A BCE or year-only record is not assigned a fictional date.
- Risk
- No prediction, risk score, exposure model, or emergency guidance is produced.
Metabase layer
Four workspaces. One read-only boundary.
The implementation keeps the embedding secret server-side, resolves stable resource keys at the moment each workspace approaches the viewport, and signs only dashboards present in the database allow-list.
- Expose five bounded views to
metabase_reader. - Reconcile 16 questions, four dashboards, and native filters.
- Resolve a stable key to the current numeric dashboard ID.
- Load the guest component lazily and renew its JWT before expiry.


The static opening frame replaces this loop when reduced motion is requested.
Read the five-minute narration script