All Things Spatial
ATS Labs · ATS Brand · React · experimental

ATS Antiquity Atlas

The Roman world, interactive — 7,748 road segments, 1,523 places, and the empire's growth from 60 BC to AD 117.

What it is

ATS Antiquity Atlas puts the Roman world on one dark, antique-tinted map: 7,748 road segments (3,450 major and 4,298 minor) from the DARMC digital Roman road network, 1,523 rank-1 places from the Digital Atlas of the Roman Empire (DARE), 37 legionary fortresses and 148 frontier fortification walls — all under a signature era toggle that crossfades the empire's boundary between 60 BC (the late Republic), AD 14 (the death of Augustus), and AD 117 (Trajan's territorial peak), while the road network simultaneously re-filters to segments already built by that era.

Everything is bundled. The GeoJSON ships with the app — rebuilt from the attributed academic originals after the hand-off copies proved to be stripped of their attributes — so the Atlas makes zero live requests and runs with an empty .env on the anonymous Esri dark-gray vector basemap. Type-ahead search works across Latin and modern names ("Londinium / London"), glass place cards decode DARE's numeric type codes and attestation years, and a Grand Tour pod glides Roma → Alexandria → Carthago → Londinium → Byzantium → Athenae.

The audience is educators, museums, digital-humanities teams, and — commercially — any prospect who needs to see time-aware filtering, data provenance work, and cartographic restraint applied to a real scholarly dataset.

The experience

The app boots over the Mediterranean at Trajan's peak: the AD 117 imperial-purple extent wash under a bronze road network, marble-white city dots waiting at higher zooms. Three era pods carry the story:

Like every app in the ATS branded line, the interface follows the house standard: React 19 and Tailwind 4 drive a dark glass shell, every control is a Lucide-iconed glass pod designed for this app, and there is no Esri widget chrome anywhere on screen. The map engine is Esri; the experience is ATS — designed, not assembled.

The data — where it comes from

Every source is bundled with the app — the Atlas makes no live data requests at all. The basemap tiles are the only runtime dependency.

SourceWhat it providesRefreshCostAttribution
DARMC Roman road network (via siriusbontea/roman-empire)3,450 major + 4,298 minor road segments and 148 frontier-wall features, with construction-era year bucketsBundled snapshotFree (public)DARMC, Harvard (McCormick et al.); CC BY-NC-SA
DARE rank-1 places (via klokantech/roman-empire)1,523 places: Latin/Greek/modern names, type codes, attestation windowsBundled snapshotFree (public)DARE, Johan Åhlfeldt, Lund University; CC BY-NC-SA
Empire extents (sfsheath/roman-maps)Empire boundary polygons for 60 BC, AD 14, and AD 117Bundled snapshotFree (public)Sebastian Heath; AWMC-derived
Esri dark-gray vector basemapAnonymous legacy vector basemap (dark ground for the antique palette)Esri-hostedFree (anonymous)Esri

How it was assembled

The application is a fully static single-page app — no backend, no database, no server-side rendering. The stack is the shared ATS Labs branded-app baseline:

Module map — the codebase is small and deliberate; each file owns one concern:

Key engineering decisions