Paper holes open onto the speaker

The speaker starts washed under blue paper with doodle marks; small round holes pop open at 0.2-0.4 s and merge into a blob window; thin white captions run along the bottom of the blob with a tiny handwritten margin note. Cozy lifestyle, craft and recap videos that should feel like a scrapbook page from the first second.

Open my video with this hook: "Paper holes open onto the speaker" from the 24fps video editor library.
Preset JSON: https://24fps.dev/video-editor/hooks/zine-paper-hole-open-hook-e5x/preset.json (pass its "preset" to the engine).
Engine (MIT, no dependencies, ES module): https://24fps.dev/editor/engine.js. Download the engine next to your page (curl -O) rather than importing cross-origin, then import { mount } from "./engine.js" in a <script type="module"> served over http.
Wiring: root = a position:relative box at the video's size. media = { main }: main is a wrapper holding my video, filling the root. Then const fx = mount(root, { kind: "text", preset, media }) and call fx.render(seconds) every frame. The preset runs 3s from t = 0; offset t to place it later. It is seek-safe: drive it from the GSAP timeline in HyperFrames or call render(frame / fps) in Remotion. Before capturing frames, await (fx.ready ?? document.fonts.ready). Check it on my footage: if text is hidden behind the subject or doesn't read against my colours, nudge the layer positions or colours.
Replace the demo text with mine: set preset.layers[n].text (use \n for line breaks); if none given, write lines that fit my footage and tell me.
Hook formula: [Possessive] [adjective] [topic] [is all about] [feeling].
Pair with captions preset caps-small-white-bold-paper-collage (https://24fps.dev/video-editor/captions/caps-small-white-bold-paper-collage/preset.json); the captions kind takes script as [{ w, s, e, emph }], plus karaoke and activeColor.
Sound design: pop at 0.12s on first hole opening (diy_creators heuristic whoosh at 0.10) (tiny, low confidence); swish at 0.59s on holes merge into the blob (0.3-0.6 s) (airy swish, hi band +30 dB (cute_lifestyle)). In HyperFrames, fetch each with media-use (e.g. npx hyperframes media-use resolve --type sfx --intent "pop" --project .; media-use needs `heygen auth login`, without it use `--local-only`, check with `--doctor`); elsewhere use royalty-free SFX or ones I give you.
Field reference: https://24fps.dev/video-editor/llms.txt. Keep sizes as fractions of the frame height so it works at any resolution. Credit: 24fps.dev/video-editor
Formula
[Possessive] [adjective] [topic] [is all about] [feeling].
Example lines
My morning self-care routine is all about creating that cozy vibe. · And then we went to the beach right after this photo. · So the first tip is making sure you prep the surface properly.
Beats
0.0s Footage visible only through ~85% blue paper; doodles (bulb, floppy disk) faint. → 0.2s 3 small round holes pop open at different spots and the first caption word appears below them. → 0.5s Holes merge into an organic blob window that swells to ~85% of frame width; handwritten margin note types in at the top. → 0.8s Blob holds with small bold caps captions riding its lower edge, 1-2 words per 0.4 s.
Sound design
pop at 0.12s on first hole opening (diy_creators heuristic whoosh at 0.10) (tiny, low confidence); swish at 0.59s on holes merge into the blob (0.3-0.6 s) (airy swish, hi band +30 dB (cute_lifestyle))
Same idea
Also called: Zine (AI Edit)
Technique
Collage page that opens a window onto the footage.
Footage
Man talking and gesturing, Pexels

Similar hooks