--- name: paper-cutout description: Make paper cut-out / stop-motion style animated videos (MP4) with code — handmade construction paper, cardstock, kraft, felt and tissue pieces with scissor-cut or torn edges and soft drop shadows, photographed on a table under a warm lamp; jointed paper puppets with brass split-pin joints, moving in 12 fps steps. Canvas 2D rendered frame by frame in headless Chrome, encoded with ffmpeg. Use when a reference video or brief calls for paper craft, cut-paper, papercraft, stop-motion paper, kids' storybook collage, 剪紙 / 紙片 / 紙偶 / 定格動畫 looks, or when the video-clone router picks the paper-cutout style. --- # Paper cut-out (stop-motion paper) engine Every frame is a pure function of time `t`. `studio.html` loads `src/kit.js` (shared ReelMimic runtime: timeline, motion helpers, camera, render hooks), `src/cutout.js` (this look: materials, cut/torn pieces, shadows, set dressing, props, transitions, captions, the photographed finish), `src/cast.js` (the puppets) and one scene file per shot. `render.mjs` drives headless Chrome for contact sheets, strips, crops and the final frames. ## Workflow 1. **Scaffold** — `bash .claude/skills/paper-cutout/scripts/new_project.sh ` (add `--keep-demo` to keep the example). Then read **`GUIDE.md`** (in this skill folder) in full, and look at `docs/demo-sheet.jpg`, `docs/expressions.jpg` (13 expressions × both puppets) and `docs/poses.jpg`. 2. **Storyboard** with reads (what the viewer must understand, when) — the same discipline as painted-animation's `ANIMATION_GUIDE.md` (timing, one read at a time, anticipation → action → follow-through, transitions at every seam). 3. **Build** one IIFE file per shot in `src/scenes/`, each ending with `shots([[t0, fn]])`; add its `