Lab culture
The hero’s culture at the scale of a section, and the one you can handle.
Anatomy
| Cells | one named cell per experiment and 10–24 unnamed ones by area, seeded so the layout is the same on every visit at a given size |
|---|---|
| Wiring | each joined to its two nearest neighbours by a bowed axon, and the named cells joined in order, so it is one network |
| Alive | the hero’s sway and breathing at ~30fps while in view; every 2.4–5.6s a cell fires on its own |
| Pointing | a cell leans toward the pointer; a named cell fires once (360ms flare, a pulse down each axon at 0.9px/ms) |
| Dragging | a cell pulls its neighbours on springs and settles back when let go; held at the band’s edge it strains and fires in ink |
| Opening | the fibre grows to the card in 200ms with an ink spark at its tip; the card burns in from where it lands (360ms) |
| Band | 23 modules tall, 16 when narrower than 720px, on paper at --ground-veil |
| Reduced motion | still: no sway, no firing, dragged cells snap back, the fibre is whole at once and the card cuts in |
From src/lib/exposure/lab-culture.ts and the guide’s Motion §12.
Decisions
-
Firing in ink
An earlier version fired user cascades in red and read as too much red. Only the open experiment’s cell is --state.
-
Preview, don’t switch
Pointing at a name only previews it: switching the panel on hover changed it on the way to it, and a click on a cell left the site (Oct 2026).
-
The culture runs on under the card
An earlier version cleared the tissue from under the card, and the card burned out onto a blank patch.
-
Strain at the edge
A dragged cell used to follow the pointer out and vanish behind the band’s edge; now it stops and strains, so the stop reads as the tissue resisting rather than a wall.
-
Handled, not read
The lab, the one section that is experiments, can be handled like the hero’s culture rather than read like a list.