P8

langenesis

an interactive time-tree of the world's languages, drawn as a metro map, every lineage from proto-ancestor to modern form.

Stacktypescriptd3vitezodSourceDemo
fifty-two language families radiating from a shared centre as coloured metro lines inside faint era rings, from dotted proto-languages near the middle out to modern languages at the rim, with family names on an outer band

each colour is one language family, named on a band around the rim. distance from the centre is time, marked by faint era rings: the middle is the oldest reconstructed ancestor, the rim is today. click a language and the tree dims to its lineage, zooms to fit it, and draws every stage from proto-indo-european down to modern english as stops on a line.

the idea

most diagrams of language evolution are one of two things. a poster, which is beautiful and cannot be searched, or a graph, which shows who descends from whom and says nothing about when. i wanted both: something you can search and click, where the length of a line means years.

how it is built

  • one yaml file per language node, with dates, a status (living, classical, extinct, reconstructed), at least one source, and a glottolog code where one exists. zod validates every file at build time, and ci fails on a bad date or a dangling parent.
  • d3 draws it, with a custom angular layout that spaces leaves evenly and a piecewise time scale, so the last two thousand years stay readable even though proto-niger-congo sits at 10,000 bce.
  • each historical stage is its own short arc with a gap either side, so a lineage reads as stations on a line rather than one long stroke. reconstructed proto-languages are dotted, because nobody ever wrote them down.
  • labels are level-of-detail: the first view names only the most-spoken languages, and the rest, including the historical stages, appear as you zoom in.
  • no backend. it is a static bundle on github pages.

what i would keep

every entry still has to be checkable. the tree now covers every family with a million or more speakers plus the notable isolates, 690 nodes in all, and each one carries a source. glottolog codes appear only where they could be verified, and contested placements say so in their notes. it is nowhere near glottolog’s eight thousand, and new languages come in through pull requests.

the demo is the whole thing. there is nothing more behind it.

All projects
nomadic.al