I The planet
A dependency-free procedural planet: tectonic plates → elevation → climate → Whittaker biomes → rivers. The same integer seed yields the same world in node, browser, or Worker — everything downstream imports mappa/engine.js rather than forking it.
Deep-time climate forcing, an interestingness battery scoring each world, and ?w= permalinks that are the world config.
II The history — this site
A coevolutionary agent-based civilization simulation. Individuals turn over by birth and death; lineages, cultures and institutions carry identity across ten millennia. Nothing about eras is scripted — agriculture and industry are emergent phase transitions.
One run is a pure function of (world, config, civSeed, ticks): the same URL regenerates the same chronicle, bit-identical at the edge and in your browser, and edge-caches forever.
The timeline tells any run in three lenses: great man of history (prophets proclaim, leaders raise states, the eminent are remembered with temperament and vocation), sweep of historical forces (phase transitions, climate pulses, credit cycles, meme selection — with belief doctrine vectors and the evolved institution rulesets), or the history of technology (first inventions, independent reinventions, diffusion milestones). Filter any lens to one named continent. Cities are actors (engine epoch 2): settlements emerge wherever mappa's rivers, coasts and resources concentrate people, agglomerate (urban gravity raises carrying capacity), build walls once their culture knows masonry, stand sieges, get sacked, fall and revive — each an org-of-orgs containing the institutions seated there. Their shock history flows into polis as boundary conditions: the world beyond drives the city, not the reverse. Major organizations link straight to their org chart. Climate is visible everywhere it acts: a forcing ribbon under the playback, a FRED series, and timeline onset / peak / release entries.
Every page takes a mesh resolution (900-cell standard up to 2400 fine): above the edge cap the run computes in your browser — same engine, bit-identical — just finer coastlines, more homelands, slower.
The tech tree (engine epoch 3) is a 24-capability prerequisite DAG — no scripted eras, behaviour branches only on capabilities held. Its agricultural spine is vendored from the cards tech pool: granary → crop rotation → seed drill → fertilizer → green revolution, plus terracing (pays only on slopes) and the water works wells and aqueduct. Each is a real mechanic, not a badge: the agtech ratchet multiplies effective carrying capacity (a green-revolution culture feeds ~2.4× what its land alone would — the ratchet Malthus missed), while the fresh-water balance pushes back — per-cell thirst scales with density, supply comes from mappa's rain, rivers and lakes, and where demand outruns supply a water multiplier caps K until wells or aqueducts lift it. Both ledgers run in FRED (energy.*, water.*), and industrial energy is now geographically sourced: coal and oil are mappa resources, and fossil output depends on actually holding the deposits.
CORS-open, no-key API: /api/civ/run · /api/civ/frames · /api/civ/sweep · /api/civ/sites · /api/civ/timeline?mode=greatman|forces · /api/civ/health
/api/civ/sites emits every state seat as a founding, and each one links straight into polis (phase III, shipped).III The hinterland & the city
Polis is the city proper, run as a cascade of three histories: civ (the über-macro), the hinterland (the mesoscale — a civ cell's neighborhood retiled with real terrain, where the "town every day's walk" lattice is minted under civ's demographic envelope and struck by civ's recorded shocks), and only then the city itself — streets determined by habitat, districts typed by the civ city's actual institutions.
Mappa carries no truth below its cells, so each level re-derives its finer geography (rivers by flow accumulation, coasts by era sea level) deterministically from the level above.
IV The people & institutions
One seed → one coherent set of names that read as a single invented culture: 12 blendable phonotactic culture packs × 5 setting registers × 5 kinds, uniqueness enforced hard. A URL is a namebook.
rite.mino.mobi/api/names?seed=…One seed → one whole organisation: 8 verticals × 7 shapes, every box a deterministic person (craft/drive/wit triad, temperament, vocation), the whole tree rolled into a performance oracle — same people, different shape, different score. Expands infinitely downward.
rite.mino.mobi/api/org?seed=…The unification roadmap
The suite grew as separate tendrils; the full plan for pulling them into one stack is in STRATEGY.md. The short version:
- I — one address. This hub; the dashboard moved to /dash/ (old run permalinks redirect); every layer keeps its seed-is-the-URL contract.
- II — one naming voice (shipped). civ's cultures, people, beliefs, institutions and cities are named by the rite/names engine, one culture-pack blend per civ culture;
names:'legacy'in the config replays the old strings. Chronicle hashes are unchanged — names were never part of the hash. - III — the civ → polis handoff (shipped).
/api/civ/sitesemits every state's rise as a founding (seat lon/lat, tick, toponym, siteSeed); polis grows the city on the same world at the same cell, seeded by the siteSeed string. The dashboard links each founding straight into polis. - IV — institutions with insides (shipped — first slice). Every civ institution and faith carries an org address (vertical, shape, seed
world:seat:cell:kind+id) — one click on the development page opens it as a full org chart at rite.mino.mobi/org/, its people named in the institution's own culture voice. Every great person is a full org person (triad, temperament, civic vocation — a valid hoop NPC). Open: org performance feeding back into civ/polis economies. - V — outward. Frozen chronicles as ATProto records, the fable
/citywing, and hoop as the walkable end of the same stack.
And because a generative system is a theory made to run: every atomic assumption about human development embedded anywhere in the suite — with its mechanic, its scholarly lineage, and an honest label on how sure we are — is catalogued at the claims.
Everything here is deterministic and permalink-stable: if you can link it, you can regenerate it, forever. · mino.mobi