Data sources
Where every map and clock on this site comes from: each dataset’s source, license, precision and known limits, and how they are kept current.

Zone geometry
| Dataset | Source | License | Notes |
|---|---|---|---|
| World time-zone polygons (65 zones, 1000×500) | Timezone Boundary Builder, tzdb 2026e (public/data/tzmap.json) | Public domain | Simplified from OSM-derived boundaries at ε=0.15°, equirectangular. Used for live day/night shading, world & regional maps. |
| US state boundaries (50 + DC) — scheduling board | D3 us-atlas states-10m, Albers-USA composite (public/data/us-albers.json) | Public domain (US government work) | Pre-projected Albers-USA with AK/HI insets baked in (the D3 us-state-choropleth pattern); city markers re-projected through the same transform so dots land exactly on the fills. Scaled to fill the 1300×1005 board. |
| US state boundaries (equirect, 50 + DC + PR) | US Census TIGER via PublicaMundi us-states GeoJSON (public/data/us-states.json) | Public domain (US government work) | Projected into the same 1000×500 equirectangular frame; used by the state crop map (StateGrid) and terrain generation. Far-western Aleutians (lon < −180°) omitted. |
| City markers (101 US, 65 world) | Curated list — IANA tzid + WGS84 lat/lon (public/data/us-cities.json, world-cities.json) | — | Each city’s zone is its IANA identifier; a city’s marker never overrides its tzid, so the clock can’t disagree with the zone. |
| Live times & UTC offsets | The visitor’s browser IANA/ICU time zone database (Intl.DateTimeFormat) | Runtime — no dataset shipped | Zero server time. Offsets and DST are computed at render time from the installed tz database, so the map can never be a season stale. |
Known limitations
- Geometry precision: state outlines are simplified Census boundaries at web scale, and the U.S. board fills each state with its majority zone; county-level splits (e.g. the four Kansas counties on Mountain Time) are not drawn — they’re covered in each state page’s zone table and text instead.
- Alaska: only the mainland + western Aleutian landmass in the 1000×500 frame; the full Aleutian arc wraps past the antimeridian and is intentionally dropped.
- Territories: Puerto Rico is included; other USVI/Guam/AS territories are noted in zone references but not mapped.
- DST edge on pinned hours: the pin-a-time control recomputes each zone’s wall clock from its current offset, which is exact for whole hours; a pinned hour that lands on a DST switch day in a zone is a documented approximation.
Update procedure
- On each IANA tz database release (typically twice a year), regenerate
public/data/tzmap.jsonvia the sibling repo’sbuild-tzmapscript and diff the zone offsets. - Re-run
node scripts/build-states.mjs(Census updates) andnode scripts/build-cities.mjs(curated city list) when their upstreams change. - The live clocks need no rebuild — they read the visitor’s installed database at runtime, so tz updates propagate to users automatically.
- Corrections are verified against these same sources and filed at Contact & Corrections.