riso-windowseat
Health Pass
- License — License: NOASSERTION
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 65 GitHub stars
Code Fail
- network request — Outbound network request in films/roost/build-string-bank.py
- spawnSync — Synchronous process spawning in tools/audio.mjs
- fs.rmSync — Destructive file system operation in tools/audio.mjs
- process.env — Environment variable access in tools/lib/ffmpeg.mjs
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
Procedural risograph films in single HTML files (Window Seat, Roost and more), with the Claude Code skills, docs and tools to make your own.
riso-windowseat
Procedural risograph films and prints, each a single index.html of Canvas 2D and Web Audio:
no libraries, fonts, images or network calls. The repo began as the release of Window Seat.
Making it, and the two shorts before it, produced a reusable kit of Claude Code skills, craft
docs and a render harness. Roost was made with it next.

Films
All are 1080 × 1080, 30 fps. MP4s are on the
v1.0 release. To watch the
source instead, open any index.html in a browser and press play.
| Film | Length | |
|---|---|---|
| Window Seat | 78 s | A night train journey through one window, scored for piano |
| Roost | 70 s | One take of a starling murmuration from sunset to roost, scored for strings |
| Lumen | 28 s | A seed that contains a sun; the first short, in call-and-response form |
| Emergence | 28 s | Lumen's sibling: how machines learned to listen, as nine worlds |
Window Seat
A night train journey seen through one fixed window with a glass of water on the sill. Every
pixel and every sound except the piano is procedural.
| Time | Passage |
|---|---|
| 0–19 s | Golden departure from a platform, fields, a red truss bridge, a conifer cutting, a tunnel |
| 19–38 s | A night city with a canal and a level crossing; another train overtakes, passengers in its windows |
| 38–57 s | Fireworks over a lake, sleeper hours with star trails, pre-dawn fog |
| 57–78 s | Dawn from a viaduct, rain streaming back along the glass, a lakeside halt under a rainbow |
The score, "A Light Left in the Window", is an original piano piece in 6/8 whose phrasing follows
the picture's timeline. The glass of water leans with every acceleration and is the last thing to
settle.

Roost
A murmuration over a marsh in one fixed view. Each starling is a 2–3 px ink dot, so the flock
is the halftone: where the sheet turns edge-on, the birds pile into dark printed ribbons. A
falcon stoops through it and the flock pours into the reeds at nightfall. The string score is
timed from the picture.
How they're made
I directed each film; Claude Code (Anthropic's coding agent) wrote the code, using the skills,
rules and docs in this repo. A work is designed in its FILM.md, its hardest frame is proved
first, and then it is inspected as frame strips, 1:1 crops and loudness sheets rendered bytools/. Every frame is a pure function of time (seek(t)), so any moment can be inspected
exactly and the MP4 cannot drop frames. Each FILM.md records the design decisions and
measurements, and lists the film's remaining weaknesses.
Make your own
git clone https://github.com/sevenevesai/riso-windowseat
cd riso-windowseat/tools
npm install && npm run setup && npm test
Then open Claude Code in the repo root and ask, for example:
- "Make a 40 second riso film of a lighthouse keeper's night."
- "Make a riso poster of a heron on a pier at dusk."
- "Score this film" or "The rain at 66 s is too loud."
- "Extend Window Seat with a snowy mountain pass after the lake."
CLAUDE.md gives the session the contract and commands. The riso-film, riso-still andriso-score skills in .claude/skills/ carry the workflow and gates. Each skill's examples.md
points to the routines in the shipped films that are worth reusing. A hook warns when an edit
breaks determinism.
What's inside
| Path | Contents |
|---|---|
films/ |
The four films, each with its FILM.md; Window Seat and Roost include sample credits and bank rebuild scripts |
prints/workings/ |
A still print series and the print kit new works start from |
docs/ |
The craft: brief, visual development, drawing, scene space, motion, sound, quality bar |
studies/ |
Interactive A/B studies of each technique, and the sound kit |
tools/ |
Scaffolding, verification, contact sheets, audio analysis and MP4 export (README) |
.claude/ |
Skills, the ink-plate rule and the determinism hook |
License
MIT, see LICENSE. The piano recordings embedded in Window Seat are Salamander Grand
Piano V3 by Alexander Holm under CC BY 3.0; seeAUDIO-SOURCES.md. The string recordings embedded in
Roost are VSCO 2 Community Edition by Versilian Studios under CC0 1.0; seeAUDIO-SOURCES.md.
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found