Make risograph films and posters with Claude Code and the riso-windowseat kit
Most AI-generated animation is a video model prompt. This repo takes the opposite route: sevenevesai/riso-windowseat holds procedural risograph films and prints, each a single index.html of Canvas 2D and Web Audio, with no libraries, fonts, images or network calls. The author directed, and Claude C

Most AI-generated animation is a video model prompt. This repo takes the opposite route: sevenevesai/riso-windowseat holds procedural risograph films and prints, each a single index.html of Canvas 2D and Web Audio, with no libraries, fonts, images or network calls. The author directed, and Claude Code wrote the code using a kit of skills, craft docs and a render harness that is in the repo. You can use the same kit to make your own.
Per the README, there are nine films (Window Seat, Roost, Held, Nonpareil, Eclosion, Passenger, Standby, Lumen, Emergence), all 1080 x 1080 at 30 fps, plus two print series exported at 2160 x 2160. Every frame is a pure function of time, seek(t), so any moment can be inspected exactly and the MP4 cannot drop frames. You can watch them at seveneves.ai/riso or open any index.html and press Play.
You need Node.js 18 or later and Claude Code.
git clone https://github.com/sevenevesai/riso-windowseat cd riso-windowseat/tools npm install && npm run setup && npm test Enter fullscreen mode Exit fullscreen mode npm install brings playwright-core and a bundled ffmpeg. npm run setup downloads the Chromium and Firefox builds the harness drives. The released MP4s are Firefox renders ( render.mjs --engine firefox ). npm test runs the harness self-tests and exits 0 when they pass.
Open Claude Code in the repo root. CLAUDE.md gives the session the contract and commands, and the riso-film, riso-still and riso-score skills in.claude/skills/ carry the workflow and gates. Example prompts from the README:
After each edit to a film, a hook flags any Math.random() call and a missing window.__riso, which keeps renders deterministic.
A work is designed in its FILM.md or PRINT.md, its hardest frame is proved first, and then it is inspected as frame strips, 1:1 crops and loudness sheets rendered by tools/. Each record keeps design decisions, measurements and the work's remaining weaknesses. That discipline is why this is a good template for any agent-built creative project: the agent checks its own output against measurable gates.
The riso-windowseat page on Deduped lists four starting points: make a film from a one-line prompt, export a 2160 x 2160 poster PNG with tools/still.mjs, fix a loud moment or score an existing film, and extend Window Seat with a new scene.
Want the setup commands for 50 AI repos people actually ship with? Get the free AI Repos That Actually Ship pack: https://dedupedai.com/ship-pack/?utm_source=devto&utm_medium=article&utm_campaign=shippack