← scroll-world · 07
The half of a shipping container's life that nobody films. One green box is lifted off a ship, unloaded, stacked empty, washed and repaired, matched to a new booking and loaded back aboard. The world is cool grey and only the box has colour. Ninety-six seconds, twelve shots, no cuts. Neighbouring shots share one anchor frame, so the seams line up; the last shot pulls back until the whole terminal is a loop and the box is one dot on the departing ship, the same composition as the first.
file://, where the YouTube IFrame API does not work.
Run python deploy-src/serve_local.py and open http://localhost:8000 instead.
Six stops, five connectors, one closer. Click any block to jump to that point in the film (the 3-second title card is counted). Labelled blocks are the stops, where a station name and title are overlaid. This film has no overlaid numbers at all: every facility-specific figure it could have shown is left blank rather than estimated.
Same generation, same twelve blocks, two different production lines.
en-GB-RyanNeural at -5%, one voice and one pace throughout.
Each line starts 0.55 s into its block. Block 2 is the densest line in the film and runs long, so its audible
start was moved earlier to 0.30 s; no word was changed to make it fit.currentTime is driven by scroll position. The camera really is
moving, scroll only drives time.prefers-reduced-motion, video not ready after 12 s, and load error. The fallback layout is complete and readable;
static frames enter the DOM only on a fallback path.The narration states only qualitative or global facts, with no number describing a particular facility. “Read level” says what I actually read: “full text” means the page was fetched and read (through a summarising tool, not verbatim); “snippet” means only the search excerpt was seen. Snippet-level sources should be checked by a person before relying on them.