Social Clip
REQUIRED BACKGROUND: marketing-studio skill. Work in C:/Projects/animations.
Produces: out/<brand>/<name>.mp4 — 10s, 1920x1080, three acts:
headline word-spring -> screenshot panel + feature lines -> end card.
Recipe
- Toolchain + brand check per marketing-studio.
- Screenshot: copy the product screenshot into
studio/public/<brand>/(create afetch-<brand>-assets.mjsif repeatable). The SocialClip panel zooms into it — tune thezoom {from,to,origin}so the crop ends BEFORE any app-side clipped edge and the money-shot column/element is the rightmost thing in frame. - Props file
props/<brand>-<name>.jsonmatchingsocialClipSchema({brandId, kicker, headline, lines (1-4), screenshot, cta}). Copy: terse, factual, brand voice, no em dashes. - Proof stills at frames 45/150/280 (headline / panel+lines / end card), Read each, iterate copy + zoom until intentional.
npx remotion render SocialClip out/<brand>/<name>.mp4 --props=<props>.- Score it (mandatory: SocialClip renders silent and a silent clip is not
deliverable):
node scripts/score-social-clip.mjs <brand> <name> --vo <act>with the ONE VO line from props/-audio.json that matches the plate. Outputout/<brand>/<name>-final.mp4; build-postkit prefers it over the matrix row. node scripts/check-audio.mjs <brand>exits 0, then deliver the-finalfile per marketing-studio.