INDEX26 PLATES / 14 SHEETS
THE ALTITUDE ATLAS — DRAWING SET 26 PLATES / 14 SHEETS

THE ALTITUDE ATLAS

SAME SUBJECT AT EVERY SCALE — THE FORM CHANGES BECAUSE THE TRUTH DOES CLIENT lit-ui-router · simshanith · PLATES COUNTED 2026-10-30

LATEST2026-10-31SHEET 1A · REV Afirst printing — sheet 1's document as a dimensional drawing of the sample app's contacts page, every dimension a code and every code a row of a plate measured in ChromiumISSUE LOG ↗

SHEET INDEX — ASCENT ORDER

SHEET 1 · REV H

the RENDER LOOP

ONE PACKAGE

The loop sits on the ground: every leg is a road that turns along the iso axes and stops short of the wall it points at. The city breaks its metaphor once, on purpose — the document is not a building but a browser window whose DOM rises in plates. The core matches, the hall runs its hook bays, Lit commits onto a layer, and a click on the topmost plate flies back to location.

ISO CIRCUIT · 1 PLATE
SHEET 1A · REV A

the DOCUMENT, DIMENSIONED

ONE PAGE

The contacts page of the sample app, drawn the way a dimensional drawing draws a component: the shell's nav, the named view it fills, the list that hugs its rows and the nested view that flexes beside it, every distance a code. At 390 the row wraps and the nested view drops under the list. The stack at the lower right is the page's layers from the window to the link, the plates sheet 1 raises.

DIMENSIONED PLAN · 1 PLATE
SHEET 1i · REV A

the RENDER LOOP, WALKED

ONE PACKAGE

The circuit, stood up and stepped. 10 stations and 12 legs, then one click — a click on <a uiSref> from /people to /people/32 — walked in 12 steps under the pointer, every step standing on the 30 source lines the plate cites verbatim.

INTERACTIVE CIRCUIT · 1 PLATE
SHEET 2 · REV K

the BRICK ASSEMBLY

COMPANIONS

Every companion drawn here enters through a published stud — on @uirouter/core, or on a brick that publishes one of its own. Drawn exploded, the sheet answers the only question that matters about a plugin architecture: pull any brick off and what breaks? Only what stands on it or peers it — four bricks seat on lit-ui-router, one of them on the server too, three of them peering a brick on the plate — and the plate’s studs stay where they are.

BRICK ASSEMBLY · 2 PLATES
SHEET 2A · REV J

the COUPLING PLAN

COMPANIONS

The brick assembly, uncoupled and brought down to one elevation: core as a socket wall, companions as shallow blocks drawn just short of seated, and each of the six connection points on the wall — five published studs and one keyed red seat — large enough to letter its API call on the joint itself. Eight more joints are companion-to-companion, and one of those spans both halves of the plate.

COUPLING PLAN · 2 PLATES
SHEET 2B · REV I

the COUPLING BENCH

COMPANIONS, CONTRACTED

The same assembly as sheets 2 and 2A, reduced to what a consumer's installer actually reads: 14 buildings and 27 contracts. Hover an edge for the range it declares and the section it lives in; hover a building for its version, what it declares, and what declares it.

INTERACTIVE COUPLING GRAPH · 2 PLATES
SHEET 2C · REV D

the ALTERNATE BUILDS

ONE BOX, ELEVEN BUILDS

One box, eleven models. The sample apps, the docs site and the examples pin ten distinct sets of family parts, and the atlas’s own app pins an eleventh on its own branch; each set is drawn as the small assembly it makes on the runtime plates its parts peer, under a callout of its parts: effect, mobx and signal-polyfill share no model, no bricks stay in the box at the cabinet’s tree and no bricks with the atlas app, and one plate carries nothing at the cabinet’s tree and one with the atlas app.

BUILD INSTRUCTIONS · 4 PLATES
SHEET 2E · REV D

the CONSUMER BUILDS

TWENTY-ONE CONSUMERS

The repository's own consumers drawn as bricks on the family they pin. Nineteen of twenty-one pin lit-ui-router, brick 1; sample-app-lit-e2e pins no family part; the atlas app, on its own branch, is the heaviest at 32 studs.

BUILD INSTRUCTIONS · 4 PLATES
SHEET 2F · REV C

the PINNED BUILDS

TWENTY-ONE CONSUMERS, PIN BY PIN

The consumers' pins, layer by layer, in sheet 2C's builds. The eight pnpm members read their 18 family pins from the tree; the thirteen npm consumers, the examples and the atlas app, read their 34 from their own lockfiles. Pins trailing npm's latest: none.

BUILD INSTRUCTIONS · 5 PLATES
SHEET 2 · 3D · REV A

the BRICK ASSEMBLY, IN THE ROUND

COMPANIONS, IN THE ROUND

SHEET 2'S FINISHED MODEL IN THE ROUND · 10 BRICKS · 2 PLATES · 2 LEVELS OF GROUND · ONE GLTF BINARY · THE SHEET'S EXPLOSION HALF AGAIN AS HIGH AS ITS ONE CLIP, ASSEMBLE ⇄ EXPLODE · THE CAMERA TURNS TO THE SHEET'S THREE DRAWN CORNERS

3D · WEBGL · LOADED ON DEMAND
SHEET 2C · 3D · REV A

the BUILDS, IN THE ROUND

ONE BOX, IN THE ROUND

SHEET 2C'S ELEVEN BUILDS IN THE ROUND — VANILLA, TYPED SIGNALS, TYPED EFFECT, TYPED MOBX, ESLINTED VANILLA, SSR SERVER, NAV, TYPED NAV, TYPED VANILLA, SERVER and THE ATLAS · TWELVE OF THE BOX'S TWELVE BRICKS AND EIGHT OF ITS NINE PLATES BUILT · ONE GLTF BINARY PER BUILD · EACH BUILD'S EXPLOSION HALF AGAIN AS HIGH AS ITS ONE CLIP, ASSEMBLE ⇄ EXPLODE · THE CAMERA TURNS TO THREE CORNERS

3D · WEBGL · LOADED ON DEMAND
SHEET 3 · REV I

the INSTRUMENT YARD

MONOREPO

The monorepo drawn as what it functionally is: a short conveyor that turns source into one tarball, inside a yard of instruments built to measure that tarball. Every structure carries its measured mass — footprint ∝ √sloc, height ∝ authored files — and gate severity is colour rather than height, because the two do not correlate: the blocks that stop the line are among the smallest on the sheet.

ISOMETRIC CITY · 4 PLATES isometric
SHEET 3A · REV F

the HANDOFF WORKS

TWO TASK MANAGERS

The two task managers drawn as the two machines they are — mise the node-free umbrella, turbo the cached fan-out — with the seams as the featured parts: every crossing is a bolted gasket labeled with what crosses it and what the boundary buys. The star fitting is the cache gasket on the return duct: turbo caches mise, because the six re-entrant lint lanes hash the mise task files and mise.lock, so a tool-pin bump invalidates exactly its own lane.

COUPLING SCHEMATIC · 2 PLATES
SHEET 3B · REV M

the WATCHED CITY

CI TASK GRAPH

The pull-request graph that plate 3A traced as plumbing, surveyed here as ground: every real task massed by what it watches (footprint) and what it actually executes (height). The survey’s verdict is flatness — 255 of 332 blocks are a single script line riding an external binary — which makes the exceptions legible at a glance: a 372-line test tower on a 111-file lot, and a 592-file plain patrolled by 21 lines of command.

ISOMETRIC GRAPH CITY · 3 PLATES isometric graph
SHEET 4 · REV J

the FAMILY SPINE

ECOSYSTEM

Not a loop and not a city: a spine. Every limb shares @uirouter/core and no limb talks to another, so the honest drawing is radial. Each block is massed from its own authored source and each stem crosses a gate naming the core range that limb admits — and the gates do not agree.

MASSED SPINE · 3 PLATES
SHEET 5 · REV D

the DESIGN SPACE

JS ECOSYSTEM

No mechanism connects these projects, so an edge between them would be fiction; the one line on the sheet runs inside the lineage, where sheet 2 draws the mechanism. What is real is position: where matching happens, who owns navigation, and — the squares — whether the URL or a state tree is the source of truth.

POSITIONED CHART · 0 PLATES
SHEET 6 · REV A

the ROUTING STRATA

EVERYTHING

At the widest altitude the only shared structure is a definition, so the drawing shrinks to a core sample and the writing does the work: five strata, one invariant triple.

CORE SAMPLE · 0 PLATES
SHEET 7 · REV K

the MEASURED CITY

MONOREPO, MEASURED

Sheet 3 drew the monorepo as a process; this sheet counts who lives in it. Footprint ∝ √sloc, height ∝ authored files, tests drawn as annexes rather than deleted — and over that census the two things a census alone cannot say: which district each member belongs to, and which roads run between them. Every road is a workspace dependency or a turbo task edge, never an impression.

MEASURED CITY · 4 PLATES measured
SHEET 7A · REV I

the SHADOW SURVEY

MONOREPO, TESTED

This plate asks which members of sheet 7’s city ever stand in test light. Every member’s own suite runs under a coverage meter, and its light is drawn to two rules: reach, how much of the member’s source the suite loads; brightness, the line coverage of what it loads. The finding is a repo-wide habit visible from the air: the light is bright far more often than it is wide.

SHADOW PLAN · 5 PLATES
SHEET 7B · REV J

the WORKING CITY

MONOREPO, RUNNING

Sheet 7 counted the city, sheet 13 dated its stone, plate 7A metered its test light. This plate turns the same city on: every member becomes a Working Plant sprite in the Factorio sense — a machine whose state is broadcast, not implied. The alert channel is drawn and empty: no gate in the city is red at HEAD.

WORKING CITY · 7 PLATES working
SHEET 7 · 3D · REV H

the CITY, IN THE ROUND

MONOREPO, IN THE ROUND

SHEET 7'S CENSUS CITY IN THE ROUND · 52 MEMBERS · 51 MASSED · 41 SPEC ANNEXES · 4 DISTRICTS · ONE GLTF BINARY · ONE CLIP RAISES IT FROM THE GROUND, RAISE ⇄ GROUND · THE CAMERA ORBITS FREE AND TURNS TO THE FOUR TRUE DIAGONALS · A SECOND LANE RELIGHTS THE CITY FROM SHEET 7A'S FILED SHADOW PLATE

3D · WEBGL · LOADED ON DEMAND real 3d isometric
SHEET 7B · 3D · REV B

the WORKING CITY, IN THE ROUND

THE WORKING CITY, IN THE ROUND

SHEET 7'S CENSUS CITY IN THE ROUND, AT WORK · 52 MEMBERS · 51 MASSED · EACH CROWNED BY A WORKING PLANT SIZED FROM ITS OWN CENSUS · 41 SPEC ANNEXES · 4 DISTRICTS · ONE GLTF BINARY · ONE CLIP RAISES IT FROM THE GROUND AND CROWNS IT, RAISE ⇄ GROUND · THE CAMERA ORBITS FREE AND TURNS TO THE FOUR TRUE DIAGONALS · A SECOND LANE RELIGHTS THE CITY FROM SHEET 7A'S FILED SHADOW PLATE

3D · WEBGL · LOADED ON DEMAND real 3d isometric
SHEET 8 · REV F

the DELIVERED CITY

ONE CONSUMER

The production dependency closure of one sample app, surveyed on disk: every delivered package as a building — footprint from file count, height from lines — with the consumer’s own 646-line building standing in the city it summoned.

DELIVERED CITY · 1 PLATE delivered
SHEET 9 · REV I

the SHIPPED CITY

ONE DEPLOY

The production docs deploy surveyed on the wire: 1,771 files, 8.0 MB gzipped, drawn as 15 districts — the tallest towers are prerendered prose and font files, the routed apps are 400 KB of accent buildings in their own city, and there is no ghost block: the deploy carries no unreachable files at all.

SHIPPED CITY · 1 PLATE shipped
SHEET 10 · REV F

the BUNDLED CITY

ONE BUNDLE

One shipped bundle opened up: every package that survived tree-shaking as a building — footprint from source kept, height from gzipped wire share — and the machine the router wraps, the chrome that demos it, and the app that uses it stand as three districts summing to 123.9 KB.

BUNDLED CITY · 4 PLATES bundled
SHEET 11 · REV N

the ENTRY QUARTERS

TWELVE PACKAGES

The split view to sheet 10’s unified city: every exported entry of every publishable package bundled alone and priced — 12 package quarters, 35 doors, the codecov bundle-analysis series drawn as skylines.

ENTRY QUARTERS · 6 PLATES
SHEET 12 · REV G

the REGISTER PLATE

PR CI GRAPH

The pull-request graph is a near-rectangle: 52 packages against 26 fanned task names, plus a ragged tail of 39 one-offs. 73% of the holes are unpunched — placeholder nodes that run nothing, minted so a ^self chain has somewhere to land an edge or an umbrella something to fan out from.

REGISTER PLATE · 2 PLATES
SHEET 12i · REV A

the REGISTER, WALKED

PR CI GRAPH

The punchcard, stood up. Default view is the real subgraph alone — 332 tasks that run a command over 283 edges that join two of them. PHANTOM SHROUD floods in the other 919 nodes and 4,967 edges, and 73.5% of the graph stops being a statistic.

INTERACTIVE REGISTER · 1 PLATE
SHEET 13 · REV J

the WEATHERING MAP

WORKSPACE × TIME

Every sheet so far has drawn the city as it stands; this one dates the stone. Same districts and footprints as sheet 7, but the fills now say when each file was first committed and the edges how often it is touched. The history is three construction campaigns separated by silent months, and the two encodings disagree on purpose: 94% of the city is summer-built and barely weathered, while the port’s original masonry carries the hottest edges on the map.

WEATHERING MAP · 2 PLATES
SHEET 14 · REV E

the UPSTREAM WORKS

CITY × COMMONS

Every other sheet draws the city; this one draws the commons the city's own record cites. Across a river of time from the first commit, 99 consignments — pull requests, issues and bug reports in other projects' trackers — sit at the day they were filed, moored to the works on the north bank; the 15 the city sent fly its pennant and the 84 it watches fly none, and roads cross back to the 101 home pull requests, issues and commits that cite them on the city's wharf.

UPSTREAM WORKS · 2 PLATES

APPENDIX — PLATES ABOUT THE ATLAS, NOT THE CODEBASE

APPENDIX A1 · REV B

the SPRITE STUDY

THE ATLAS ITSELF

Every other plate in this set measures the codebase. This one measures a decision: how a workspace member should look when a sheet draws it as a building. One demo member is drawn fifteen times, five states along a wreck-to-splendor gauge under three competing treatments, and each treatment is priced. The verdict stands in the set: sheet 7B is the working plant, and sheet 13 the weathering gauge.

SPRITE STUDIES · NO CENSUS PLATE — META
APPENDIX A2 · REV E

the SURVEY OFFICE

THE CENSUS PIPELINE

The instrument drawn by its own instrument: 23 probe stations over three tiers write 23 filed plates, which 26 drawings read — and the one that matters most is read nineteen times over. Nothing here is hand-listed: the stations are the generator files that write a plate, the tiers are the basis primitive each one calls, and the edges are the plate URLs the sheets construct.

FLOW GRAPH · NO CENSUS PLATE — META
APPENDIX A2i · REV B

the SURVEY OFFICE — INTERACTIVE

THE CENSUS PIPELINE

appendix A2's cytoscape sibling — the same introspected nodes and edges, hoverable; the master plate's fan-out is the hero

INTERACTIVE GRAPH · NO CENSUS PLATE — META
APPENDIX A3 · REV C

the ATLAS, MEASURED

THE ATLAS ITSELF

The atlas turned on itself with the census city's own instrument: footprint ∝ √sloc, height ∝ files, from sheet 7's functions. Sheet 7's four districts stand along the top as one block each; the atlas stands below them as a fifth district of four members — 2.5× the product it draws: 26,384 sloc against 10,708 in packages/.

ISOMETRIC CITY · 5 PLATES — META measured
APPENDIX A4 · REV D

the ATLAS, SHIPPED

THE ATLAS ITSELF

The atlas's own deploy surveyed on the wire with sheet 9's instrument at two altitudes: footprint ∝ files, height ∝ gzipped bytes, from sheet 9's functions. By role, three summed blocks of the docs deploy stand west of three of the atlas's; by district, the docs deploy's fifteen stand west of the atlas's eleven — 1.1× the docs deploy it draws, on the wire: 8.5 MB gzipped against 8.0 MB, in 290 files against 1,771.

SHIPPED CITY · 2 PLATES — META measured
APPENDIX A5 · REV B

the SHEET, DIMENSIONED

THE ATLAS ITSELF

The atlas's own sheet chrome drawn as a component: one sheet in plan at 1440 wide with its spacing at 1:1, three details drawn larger and the same sheet at 390 wide. Every dimension is a code, and every code is a row in the four schedules under the drawing, measured in chromium or read from chrome.mjs.

DIMENSIONED PLAN · 1 PLATE — META
APPENDIX A6 · REV A

the INCORRECT USES

THE ATLAS ITSELF

The atlas's own drawing rules as nine numbered pairs, each incorrect use crossed in red beside its correct form at one scale. Under each pair, and in the schedule, stands the guard that catches it, or no guard, which makes the rule a candidate for one.

PAIRED SCHEMATIC · NO CENSUS PLATE — META
REPOSITORYlit-ui-router · simshanith
INSTRUMENTS (tools/*)27
LATEST SHIPPED1.19.0 · 2026-10-30
PUBLISHABLE PACKAGES12 · eslint-plugin-lit-ui-router 1.3.0 · lit-ui-router 1.19.0 · lit-ui-router-effect 0.6.0 · lit-ui-router-mobx 1.4.0 · lit-ui-router-signals 0.3.0 · lit-ui-router-ssr 0.7.0 · ui-router-navigation-location-plugin 1.2.0 · ui-router-effect 0.2.0 · ui-router-mobx 0.2.0 · ui-router-registry 0.3.0 · ui-router-server 0.7.1 · ui-router-signals 0.2.0
SHEETS14 altitudes · 26 plates · 7 in the appendix · whole plate cabinet counted at origin/main @ 3f55e419

GENERAL SURVEY — THE WHOLE TRACKED REPOSITORY, AS SHIPPED ON MAIN

SLOC (CODE)122,550
FILES COUNTED1,303
LINES161,072
BLANKS21,998
COMMENTS16,524
LANGUAGEFILESSLOCSLOC, AS A BAR
TypeScript78391,931
Markdown8911,940
JSON2449,702
YAML201,792
JavaScript351,381
Vue81,245
SVG35972
HTML21868
CSS3696
Patch11645
BASH15431
TOML7393
TypeScript Typings23214
JSONC4194
SQL2135
License15
Plain Text14
Shell12

BASIS — every tracked file on origin/main @ 3f55e419 (1,353 paths, 1,303 of them a language scc can name; the other 50 are binaries, dotfiles, and lockfiles — generated, and rightly left out) · scc 4.0.0 Code basis · counted 2026-10-31 · every number above imported from www/atlas.lit-ui-router.dev/data/census-files.json · deliberately broader than the sheets' authored-source census, and deliberately main: this atlas's own branch would add a 29k-sloc self-portrait.

The source image — an isometric block city over a strategy-breeding harness — works because of three quiet decisions, and only one of them is the city: it maps roles in a mechanism rather than files; it spends its one visual scalar (height) on a true quantity; and it keeps a CONDITION field that says what is currently wrong. This set keeps those three decisions and lets everything else change with altitude.

The result is an argument about form: a loop where there is a genuine cycle (sheet 1), panels where packages are too small to be cities (sheet 2), the full city where the measurement thesis is actually true (sheet 3), a massed spine where the family shares one core but the limbs never touch (sheet 4), a chart where edges would be fiction (sheet 5), and mostly prose where only a definition survives (sheet 6). Fitness peaks in the middle altitudes and collapses at both ends.

Above the sixth altitude the set stops arguing about form and starts measuring. Sheets 7–10 are a survey quartet, each counting the same subject at a different boundary: what the repository holds (the monorepo by mass), what npm delivers (the sample app's node_modules, 279× the app it serves), what the browser downloads (the docs deploy on the wire, where the prerendered prose tops the skyline and the lettering alone outweighs every routed app the site demonstrates), and who occupies the bytes after tree-shaking (the machine the router wraps is 21.0% of the bundle; the router itself, 6.4%). Sheet 11 cuts the same wire the other way, pricing 12 package quarters and 35 doors one at a time. Sheet 12 leaves the wire and draws the monorepo as its own CI reads it, the pull-request task graph punched onto a register plate. Sheet 13 ages the city by commit date, and sheet 14 draws it among the commons it builds on: the pull requests, issues and bug reports in other projects that its own record cites, sent or watched, and the home work that cites them. Sheet 1A brings sheet 1's document down to one page at reading size: the sample app's contacts view, measured in a browser and dimensioned the way a component drawing is. Interactive lanes (1i, 2B and 12i) walk the plates they sit beside, and the routed set stands sheets 2, 2C and 7 in the round. The appendix files plates whose subject is the atlas rather than the codebase: the sprite study behind the building sprites (appendix A1), and the survey office that turns the instrument on itself (appendix A2) — the census pipeline behind almost every number here, drawn as archive → probe stations → filed plates → drawings, introspected from the generator at build time, and walked live in its lane A2i. Appendix A3 turns sheet 7's ruler on the atlas itself: its drawing office, survey office, routed site and site build, massed beside the codebase they draw. Appendix A4 turns sheet 9's ruler on the atlas's own deploy: what the browser downloads from atlas.lit-ui-router.dev, district by district, beside the docs deploy summed by role. Appendix A5 draws the sheet every plate is set in as a dimensional drawing: its frame, head, plate, schedule, caption, notes and title block, measured in the built app and lettered in codes. Appendix A6 draws the atlas's own drawing rules broken, each incorrect use crossed beside its correct form at one scale and tied to the guard that catches it, or to none.