HistoryLayer is assembled almost entirely from other people's work. This page says whose, under what terms, and what was changed — which is both the honest thing to do and, for the borders, something the licence requires.
What is in it
| What | From | Licence |
|---|---|---|
| Historical borders, 123,000 BCE – 2010 | aourednik/historical-basemaps | GPL-3.0 |
| Modern borders, states and provinces, roads, rivers, lakes, airports, land and ocean | Natural Earth | Public domain |
| Districts and municipalities | geoBoundaries (CGAZ ADM2) | CC BY 4.0 |
| Base map behind the editing tools' location picker | Esri ArcGIS Location Platform | Licensed, attribution required |
| Exact frontiers overlay | OpenHistoricalMap | CC0 |
| Events, people, wars, settlements, villages | Wikidata | CC0 |
| Descriptions, and the opening paragraph of a record's article | Wikipedia | CC BY-SA 4.0 |
| Pictures | Wikimedia Commons | Per file, credited in the app |
| Archivo typeface | Google Fonts | SIL OFL 1.1 |
The borders, and what you may do with them
Where a record has no description written here, it shows the opening paragraph of its own Wikipedia article. That text is quoted, not rewritten, and each one carries a line naming the article and the exact revision it was taken from, linking to that revision rather than to today's version of the page — so what you read on the card is what you will find at the other end of the link. About 30,000 records show borrowed text of this kind; where somebody here has written a description, theirs is shown instead and nothing is borrowed.
The historical border snapshots come from aourednik/historical-basemaps, copyright its authors, licensed under the GNU General Public License, version 3.
They have been modified. The published snapshots are
full-resolution GeoJSON, around 73 MB in total. Each one here has
been simplified with mapshaper — Visvalingam, with keep-shapes
set so that small polities do not disappear — and converted to TopoJSON,
which also removes the duplication where two neighbours share a border.
The result is one file per year. Nothing about the geometry has been
invented, corrected or re-attributed: it is the upstream data at lower
resolution.
Those files are sent to your browser when you use this site, so you have
received a modified GPL-3.0 work. You may use it, study it, share it and
change it; anything you distribute that is derived from it carries the
same terms. The full licence text is served alongside the data, at
/LICENSES/GPL-3.0.txt.
The corresponding source is a public repository:
NovarkWorks/HistoryLayer-borders.
Every file you have received is in it, together with the scripts that
produced them from the upstream project — fetch-borders.mjs,
build-borders.mjs and the year list they read. It is the
same repository this site fetches the borders from, so what you can read
is exactly what you are running.
The application is licensed separately
The border data is GPL-3.0. The application that draws it is
not — it is copyright Novark LLC, all rights reserved,
and the terms are in LICENSE in the repository.
The reason the two can differ is that this application is not derived
from that dataset. It reads a format. The built bundle you are running
right now contains the field names it looks for —
SUBJECTO for empire colouring,
BORDERPRECISION for the certainty mode — and
not one coordinate: every border is fetched at runtime
from files served beside it, each carrying its own licence. Point the
same code at Natural Earth and it draws that instead. The GPL calls this
"mere aggregation … on a volume of a storage or distribution medium",
and says explicitly that it does not bring the other work under its
terms.
The borders are on their own host, so the separation is visible rather than only argued: your browser fetches the application from one origin and the dataset from another, each arriving with its own licence. The network panel will show it. That is not what makes the position correct — it was correct when both were served together — but it does make it plain.
That is a considered reading, not a certainty, and it is written here
rather than left implied so that anybody relying on it can weigh it for
themselves. What is not in doubt: the files under
/data/years/ and /data/detail/ are GPL-3.0,
they are conveyed to your browser when you use this site, and you have
every right the GPL gives you over them — including the corresponding
source, which is public and linked above.
The present-day layers, and what they are for
Three layers of modern boundary sit over the historical ones, each appearing further in than the last: countries, then states and provinces, then districts and municipalities. They are there to answer "where is this now" — a 1914 map of Austria-Hungary is easier to read when you can see that this part of it is Slovakia and that part Croatia. None of them is historical, and none is drawn at world zoom.
The finest of the three comes from geoBoundaries, which is CC BY 4.0 — attribution required, so this credit is an obligation rather than a courtesy: Runfola, D. et al. (2020), geoBoundaries: A global database of political administrative boundaries, PLoS ONE 15(4): e0231866. The files have been split per country, simplified, and reduced to interior boundaries only; each country's directory carries the notice with it.
"ADM2" is not the same thing everywhere, and the map does not pretend otherwise: Brazil's 5,570 units are municipalities, Japan's 1,731 are municipalities, Romania's are communes, and the United States' 3,231 are counties. In a few countries — France among them — it lands on the same divisions Natural Earth already calls admin-1, so the two layers agree rather than adding depth.
The ground under the map
The map button offers two answers to what the borders are drawn on: Plain, the polities and the names and nothing else; and Detailed, which adds provinces, districts, roads, rivers, lakes, airports and every settlement on file. Both are drawn here from public-domain data rather than fetched as somebody else's picture.
There was a third, Satellite, and there is not any more. It fetched photography and a street layer from other people's servers — EOX's Sentinel-2 and terrain, OpenStreetMap's roads as EOX renders them, NASA's GIBS — and both the mode and the code that called them have been removed from this build, so their credits have gone from the table with them. A notice is withdrawn only once the thing it covers can no longer run; until that was true they stayed.
Esri remains, for a different reason. The editing tools draw their location picker on Esri tiles, so a signed-in editor placing a pin is still looking at Esri's imagery. Nothing a visitor sees comes from there.
It is not an ordinary web map, and that is not a preference. This atlas is drawn in plate carrée, EPSG:4326 — the projection the border files themselves use. The tiles behind almost every map on the web are Web Mercator, and laid under this one they would not sit on a single frontier at any zoom. That is a large part of why the ground here is drawn from data rather than borrowed as pictures: the pictures on offer are the wrong shape.
What changed, and why it is worth writing down. This
site drew Esri's imagery for a while from
server.arcgisonline.com, which answers with no key and no
account. That is not permission. Esri's own FAQ for its ArcGIS Online
items says that if you do not have Esri software you must purchase an
ArcGIS Online subscription, and that Living Atlas content may not be
used commercially in an application. An endpoint being friendly is not
a licence, and the gap between those two things is easy to miss and
easy to ship. It is recorded here so that nobody reads the code, finds
the anonymous host still reachable, and quietly goes back to it.
Esri tiles are still fetched in one place: the location picker in the editing tools, under a Location Platform key, where a signed-in editor placing a pin needs to see real ground. They are requested as they are looked at and thrown away after — not stored, not bundled, not redistributed, which is the same arrangement the borders have and for a related reason. What this site serves is its own code; what it borrows, it borrows live and says so.
Wikipedia, and why there is so little of it here
Wikipedia is CC BY-SA, which asks for attribution and share-alike on anything derived from it. Most of what this app takes is first sentences and short descriptions, and every record links to the article it came from. The long-form accounts on the curated set — the stories on 214 events and 76 people — are written for this project rather than excerpted.
One exception, added deliberately. An editor correcting a record can paste an article link and have the form fill itself from it, and what fills the story field is the opening of that article — Wikipedia's words, not ours. A record whose story arrived that way is CC BY-SA text and is credited to the article it came from, which is the link in that record's Source line. It is worth saying plainly rather than leaving it to be discovered: the two kinds of story read alike on screen, and only the source line tells them apart.
Pictures
Every picture names its own file and links to its page on Wikimedia Commons, where its licence and author are recorded. Commons files are licensed individually — public domain, CC0, CC BY, CC BY-SA and others — so this app credits each file rather than making one claim about all of them. If a picture here is wrong or should not be here, the ⚑ beside it reports it.
What this map is not
Historical borders are contested, and the further back you go the less anybody knows. Before 1000 BCE every polygon in the source is marked approximate and fewer than half are even named. The app says so as you move: it names the snapshot it is actually drawing, marks imported records as unverified, and reports counts in full rather than reporting a display cap. None of that makes it authoritative. It is a reading of several open datasets, and its sources are listed above so you can go and check.