Repository navigation
Closed
Labels
ready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agent
Description
Parent
What to build
Enhance the static press line (#64) into the stepped, sticky version, with a terminal that replays each unit's lines. The static markup stays the source. This ticket adds behaviour and never builds the press in JavaScript.
- When to enhance: the one vanilla JS module enhances the press only when it runs and
prefers-reduced-motionis notreduce. Otherwise the static version stays as shipped. - Layout: the section becomes
position: stickyover about 3–4 viewport heights. On wide viewports the press stays full width, and the terminal sits beneath it inside the sticky area. On phones they stack. - Steps: step markers watched by an IntersectionObserver, and 1–4 step buttons, all call one
render(n). It sets the whole state for step n: which unit is lit, the button state, and the terminal's lines. It never applies incremental changes, so a fast scroll that skips a step can't desynchronise anything. Use a root margin of about-45% 0px -45% 0px; the prototype found-50% 0px -50% 0pxnever fires in Chrome. - Terminal: it replays the current unit's lines (the same A thirdshift-plugin-* temp dir can outlive its Run #24 Run lines as the static columns), with a Pause/Play control (WCAG 2.2.2).
- Motion: short transitions between steps only. No scroll snap, no smooth-scroll or animation libraries, and no scrubbed animation tied to the scroll position.
Acceptance criteria
- Scrolling through the section lights C, M, Y and K in turn, and the terminal always shows the lit unit's lines, including after a very fast scroll.
- The 1–4 buttons jump to a step, and the state matches what scrolling to that step shows.
- Pause stops the terminal replay, and Play resumes it.
- With reduced motion, or with JS disabled, the static version from Press line, static: the full How a Run works diagram in HTML and SVG #64 is shown unchanged.
- Scrolling behaves natively: no snapping, and no hijacking.
- It works in current Chrome, Safari and Firefox.
- Screen recordings or screenshots of the steps are attached to the pull request.
Blocked by
Metadata
Metadata
Assignees
Labels
ready-for-agentFully specified, ready for an AFK agentFully specified, ready for an AFK agent
Activity