The page this skill built from examples/side-b, working in your browser. Opens in a new tab.
5.3-second example rendered by this skill from examples/side-b · 1280×720
Example settingswhat each example above was built from
examples/side-bhero.json
- Brand
- Side B
- Headline
- Play it loud
What you get
- A one-page hero and a paste-in embed with your name, words and links
- A film that loops forever with no visible restart, checked frame against frame
- A tall cut of the film for phones, so the subject fills a portrait screen
- Fraunces and Space Grotesk in this hero's own colors, with words that rise in once as the page opens
- A poster frame for reduced motion and while the film loads, so it is never blank
- Checks at 390, 768, 1280 and 1920 px: 14 px minimum text, a headline nothing touches, 44 px tap targets, no overflow
- A 1080p MP4 and a 1080x1920 phone MP4, rendered frame by frame
- Open-source licenses for every part it builds on
Good fit
- Record shops, music venues and audio brands open on a record turning on a walnut deck in warm lamp light.
- A dark panel on the left holds the wordmark, numbered links and a Fraunces headline; the record turns on the right.
- On a phone the record fills the top of the screen and the panel becomes a sheet with the headline and buttons.
Not for
- Your own video: the layout and colours are set for this film (a black vinyl record spinning on a walnut turntable in warm lamp light)
- Changing the colors, fonts or layout through settings (every word and link is yours; the look is fixed)
- Long headlines: two short lines, with limits the build enforces
- Sound: browsers only autoplay muted video, and the film is silent
- Full landing pages below the hero (see the Landing Pages series)
About this skill
A full-screen website hero on five seconds of generated film that loops with no seam: a black vinyl record spinning on a walnut turntable in warm lamp light, the grooves catching a soft rainbow sheen. It uses a side-column layout: a frosted panel the full height of the screen with the wordmark, numbered links, a two-line headline, the introduction, the buttons and short facts, with the film beside it. Wide screens get the wide film and phones a tall cut framed on the subject, so a phone never shows a letterbox or an empty half; every text is at least 14 px and nothing touches the headline. Your agent writes one hero.json with your words and links; the build checks every length, a check at four widths enforces the layout rules and the seamless loop, and a recorder makes 1080p and phone MP4s. It suits a record shop, music, audio, bar, radio or any warm, analogue, nightlife brand.
Example request
Make a Vinyl Spin hero for our podcast studio: 'Hear it / properly', listen links, two facts, and record it.
How it works
Your agent
- 1
Collect the words
Every number, price and claim must come from the person.
- 2
Write hero.json
Copy
<skill>/examples/side-b/hero.json(Side B, a record shop and listening bar) and replace every value. - 3
Build
It lists every problem at once (a missing field, words too long for their place, a bad link) and writes nothing until they're fixed.
- 4
Check
It opens the page at 390, 768, 1280 and 1920 px wide and with reduced motion, and fails on: script errors, sideways scrolling, any text under 14 px, a headline smaller than 6.5% of the screen or that anything else touches, a headline closer than 24 px under the bar, overlaps, text that spills out, links without an address, buttons shorter than 44 px on a phone, a hero that doesn't fill the screen, and a film whose last frame doesn't match its first.
- 5
Look at it
Open the address it prints, and narrow the window to see the phone layout and the tall film.
- 6
Record the video (optional)
Writes
out/preview.mp4(1920×1080, 30 fps, one loop) andout/poster.png; with--tall,out/preview-tall.mp4andout/poster-tall.pngas a phone shows it (1080×1920). - 7
Put it on the site
Use
out/index.htmlas the page, or pasteout/embed.htmlinto an existing page and copyout/assets/next to it (or change theassets/paths).
- 1
You get
- out/preview.mp4
- out/poster.png
- out/preview-tall.mp4
- out/poster-tall.png
- out/index.html
- out/embed.html


What you need
- Node.js 18 or newer. Nothing to install.
- Chrome, Chromium or Edge, for the checks and the video (the scripts find it; set
CHROME_PATHif they don't). - ffmpeg for the loop check and the video (
brew install ffmpeg,winget install ffmpeg,apt install ffmpeg; or setFFMPEG_PATH). - Internet access when the page is opened, for the Google Fonts. Without them system fonts stand in.
Last checked Nov 2, 2026: the package’s own build and render commands ran and passed.
If something goes wrong
The page shows a still picture instead of the film
Reduced motion is on in the system settings (that is on purpose), or the browser blocked autoplay in power-saving mode. The still is the film's first frame, so the hero still looks finished.
A phone shows the wide film cropped badly
The page decides by shape, not width: anything taller than 4:5 gets the tall film. Check that
assets/film-tall.mp4was copied with the page.The build says a field is too long
Shorten the words. The headline lines are sized for the lengths in
template/fields.json.
What’s in the download
- SKILL.md8.01 KBthese instructions.
- examples/
- examples/side-b/938 B1 file
- scripts/
- scripts/kit/the Loop Stage kit the four scripts run (
build.mjs,stage.css,runtime.jsfor the browser,check.mjs,record.mjs,serve.mjs,cdp.mjs);scripts/kit/KIT.mdsays how it fits together. - scripts/kit/build.mjs11.5 KB
- scripts/kit/cdp.mjs4.90 KB
- scripts/kit/check.mjs9.84 KB
- scripts/kit/KIT.md3.26 KB
- scripts/kit/record.mjs6.88 KB
- scripts/kit/runtime.js1.70 KB
- scripts/kit/serve.mjs2.46 KB
- scripts/kit/stage.css2.26 KB
- scripts/build.mjs142 Bchecks
hero.jsonagainsttemplate/fields.jsonand writes the page, the embed and the assets. - scripts/check.mjs142 Bchecks the page at four widths and with reduced motion, and checks both films loop with no seam.
- scripts/chrome.mjs3.63 KBfinds Chrome, Chromium or Edge.
- scripts/record.mjs144 Brenders the words frame by frame and lays them on the film with ffmpeg:
preview.mp4andposter.png, a phone version with--tall, or one still. - scripts/serve.mjs142 Bserves a built hero on localhost to look at.
- template/
- template/fields.json2.59 KBevery field of
hero.jsonwith its limit, plus the film's length, the colours, fonts and framing. - template/hero.html4.60 KBthe design: its CSS and the markup of the words.
- NOTICE.md883 B
- TESTED.json233 B
19 files · 64.2 KB · installs to ~/.claude/skills/vinyl-spin-hero for Claude Code and ~/.agents/skills/vinyl-spin-hero for other agents
Credits and licenses: NOTICE.md plus any LICENSE files inside the ZIP.
Similar Skills
View allDetails
- Output
- Full-screen hero on a generated film that loops with no seam · tall cut for phones · page + embed · 1080p and phone MP4s
- Needs
- Node.js 18+, Chrome, and ffmpeg for the loop check and the video
- Series
- Loop Heroes · 15 skills
- Updated
- Nov 2, 2026
- Checked
- Nov 2, 2026: its own commands ran and passed. That is a working check, not a security audit.
Written for
See all 31 agents that read skill folders.
Install guides
For your agent
Generates with
Installed it? Tell others how it went. Reviews come from people who installed this skill.
Write a reviewFAQ
Does the record jump when the film loops?
No. The record spins at a constant speed and the end is cross-faded into the start, so it keeps turning.
Does the label show a brand?
No. The label is plain red with no writing, so it never names anyone.
Can I add more links?
Up to four numbered links in the panel, plus a small button beside the wordmark.
Which agents is Vinyl Spin Hero written for?
Any agent that reads SKILL.md folders, including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI and OpenCode.
Do I own what I make with it?
Yes. Everything your agent makes with this skill is yours, including for client and commercial work.
What if it doesn’t work for me?
Email support@lookbk.dev within 7 days of buying and we’ll fix it or refund you.
Credits and licensesWritten by Lookbk
the film, generated for Lookbk from a scene written for Lookbk (a still image animated into film with the same first and last frame), and the layout, template and Loop Stage kit, all written for Lookbk. The fonts are from Google Fonts. Written by Lookbk, no third-party code.
Credits and licenses for the open-source software and fonts it uses are in NOTICE.md inside the download.