An open-source tool for digitizing the borders of every civilization in world history.
ChronoMap aims to become the collaborative atlas that history has always needed — a place where anyone can define the borders of any state, empire, or city-state at any point in time, and where anyone else can explore, use, and build upon that data. Think of it as a Wikipedia for historical maps.
Phase 1 (current): A full-featured browser-based editor for creating historical map projects — drawing territory polygons, defining polities and eras, placing landmarks, and aligning reference images from historical atlases.
Phase 2 (planned): An open platform where contributors worldwide can publish, browse, and reuse community-created maps — making the sum of all historical borders freely available to researchers, educators, and enthusiasts.
- Territory Drawing — Draw polygons on an interactive map with vertex editing, undo/redo, and automatic coastline clipping
- Timeline — Scrub through years to see territories and landmarks change in real time
- Polities & Eras — Define empires, kingdoms, republics, tribes, and more with custom colors and time ranges
- Landmarks — Place cities, capitals, forts, ports, monasteries, and battle sites
- Reference Image Overlay — Import historical map images, align them using corner dragging or ground control point (GCP) matching with thin-plate spline warping
- Import / Export — Save and load projects as
.chronomap.jsonfiles, import data between projects - Coastline Clipping — Automatically trim territory polygons to realistic coastlines using Natural Earth data
bun install
bun run devThe dev server runs at http://localhost:4010.
bun run build # type-check + production build → dist/
bun run preview # preview production build locallyProjects are saved as .chronomap.json files containing polities, eras, territories, landmarks, and reference images. See public/examples/ for sample projects.
- React 19 + TypeScript + Vite
- Leaflet for interactive maps
- Zustand for state management
- Tailwind CSS v4
- Turf.js for geometric operations
- Coastline data from Natural Earth (public domain)
ChronoMap is in active development. Contributions are welcome — whether it's fixing bugs, improving the editor UX, or helping build the Phase 2 community platform.
MIT — see LICENSE.
