The page this skill built from examples/plinth, working in your browser. Opens in a new tab.
5-second example rendered by this skill from examples/plinth · 1280×720
Example settingswhat each example above was built from
examples/plinthhero.json
- Brand
- Plinth
- Headline
- Made to be Noticed
What you get
- A one-page hero and a paste-in embed with your name, words, numbers and links
- The marble bust cut out of every frame and drawn over the giant serif word
- Liquid-glass bar, chip, button and cards in Cormorant Garamond and Manrope, with an intro tied to the film's own clock
- A phone layout: the headline stays in the frame, the introduction and buttons move into a block underneath
- Stills of the last frame for reduced motion, no WebGL, blocked autoplay or a slow connection, so it is never blank
- A 1080p MP4 with the film's sound and a poster, rendered frame by frame
- Checks at 390, 768, 1280 and 1920 px for overflow, overlaps, links and script errors
- Open-source licenses for every part it builds on
Good fit
- Galleries, museums, architects, beauty and publishing brands can open on a white marble bust in a black studio while a cool rim light sweeps across her face.
- Editorial brands get a classical serif, a warm stone accent and a scene card that reads like a museum label, numbered by room and material.
- Collections with numbers to show, such as studios, works on view or years open, get two or three glass cards, and one can count up as the light moves.
Not for
- Swapping in your own video: the matte is made for this film, and the scene (marble bust) is the design
- Changing the colors, fonts or layout through settings (every word, number and link is yours; the look is fixed)
- Long headlines: the big word takes up to 8 characters and each field has a limit the build enforces
- Sound on the live page (browsers only autoplay muted video; the MP4 keeps the sound)
- Full landing pages below the hero (see the Landing Pages series)
About this skill
A dark, cinematic website hero on five seconds of generated footage: a white marble bust of a young woman on a black stone plinth in a pitch-black studio, a cool rim light sweeping across her face while dust drifts through the beam and the camera slowly circles in. A giant serif word sits behind the marble bust, which is cut out of every frame and drawn over it, under an italic line that fades in word by word. Around it, liquid-glass panels: a floating bar with your links, a kicker chip, a glass second button, number cards (one can count up) and a scene card whose line fills as the film plays. Your agent writes one hero.json with your words and links; the build checks every length and writes a page and an embed, and a recorder makes a 1080p MP4 with sound. It suits a gallery, museum, art, architecture, luxury, beauty, publishing or any editorial, classical, quiet-luxury brand.
Example request
Make a Marble Bust hero for our ceramics studio's new website: italic line 'Shaped by', big word 'Hand.', our links and buttons, and record the video for Instagram.
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/plinth/hero.json(Plinth, an online gallery for emerging sculptors) and replace every value. - 3
Build
It lists every problem at once (a missing field, a word too long for its place, a bad link) and writes nothing until they're fixed.
- 4
Check
It serves the page on localhost and opens it at 390, 768, 1280 and 1920 px wide and with reduced motion.
- 5
Look at it
Open the address it prints.
- 6
Record the video (optional)
Writes
out/preview.mp4(1920×1080, 30 fps, 5 seconds, with the film's sound) andout/poster.png(the last moment). - 7
Put it on the site
Either use
out/index.htmlas the page, or pasteout/embed.htmlinto an existing page and copyout/assets/next to it (or change the fourassets/paths to where you host them).
- 1
You get
- out/preview.mp4
- out/poster.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 video (
brew install ffmpeg,winget install ffmpeg,apt install ffmpeg; or setFFMPEG_PATH). - A web server for the page. Opened straight from disk (
file://) browsers won't let the page draw the film, and it shows the still;node scripts/serve.mjs outserves it on localhost. - Internet access when the page is opened: GSAP and the fonts load from jsDelivr (pinned, with an integrity hash) and Google Fonts. Without GSAP the hero shows its still with every word in place.
Last checked Nov 1, 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
It was opened from disk; run
node scripts/serve.mjs outand open the address. If it still shows the still, the section'sdata-fh-stillattribute says why (reduced-motion,no-webgl,autoplay-blocked,film-failed,film-slow,no-timeline).The film doesn't play on the live site but did locally
The film is on another domain without CORS headers. Serve
assets/from the same site as the page, or addAccess-Control-Allow-Originon the CDN.The build says a field is too long
Shorten the words. The big word is sized for up to 8 characters.
What’s in the download
- SKILL.md10.3 KBthese instructions.
- examples/
- examples/plinth/1.24 KB1 file
- scripts/
- scripts/kit/the Footage Heroes kit the four scripts run (
build.mjs,runtime.jsfor the browser,frame.css,check.mjs,serve.mjs,record.mjs,cdp.mjs);scripts/kit/KIT.mdsays how it fits together. - scripts/kit/build.mjs13.6 KB
- scripts/kit/cdp.mjs4.90 KB
- scripts/kit/check.mjs5.48 KB
- scripts/kit/frame.css2.24 KB
- scripts/kit/KIT.md4.52 KB
- scripts/kit/record.mjs7.23 KB
- scripts/kit/runtime.js7.94 KB
- scripts/kit/serve.mjs2.55 KB
- scripts/build.mjs146 Bchecks
hero.jsonagainsttemplate/fields.jsonand writes the page, the embed and the assets. - scripts/check.mjs146 Bserves the page and checks it at four widths and with reduced motion.
- scripts/chrome.mjs3.63 KBfinds Chrome, Chromium or Edge.
- scripts/record.mjs148 Brenders the words frame by frame and lays them on the film with ffmpeg:
preview.mp4with sound andposter.png, or one still. - scripts/serve.mjs146 Bserves a built hero on localhost to look at.
- template/
- template/fields.json3.48 KBevery field of
hero.jsonwith its limit, plus the film's length and the hero's colours and fonts. - template/hero.html8.75 KBthe design: its CSS, the layer behind the subject, the layer in front, and the GSAP timeline.
- NOTICE.md1.17 KB
- TESTED.json233 B
19 files · 77.8 KB · installs to ~/.claude/skills/marble-bust-hero for Claude Code and ~/.agents/skills/marble-bust-hero for other agents
Credits and licenses: NOTICE.md plus any LICENSE files inside the ZIP.
Similar Skills
View allDetails
- Output
- Cinematic hero on generated footage · liquid-glass UI · words behind the subject · page + embed · 1080p MP4 with sound
- Needs
- Node.js 18+, Chrome, and ffmpeg for the video; the page needs a web server (a local one is included)
- Series
- Footage Heroes · 25 skills
- Updated
- Nov 1, 2026
- Checked
- Nov 1, 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
Can I put my own video behind the headline?
No. The matte that cuts the marble bust out was made for this film, so the footage is part of the design. Every word, number and link is yours through hero.json; the footage, colors, fonts and layout stay as they are.
How long can the words be?
The italic line takes up to 18 characters, the big word behind the subject up to 8 and the wordmark up to 14. The build lists every field that is too long and writes nothing until they are fixed, and the check fails if anything spills or overlaps.
Will the bust look right on a phone?
Yes. Under 760 px the frame keeps the bust, the italic line and the big word, and the introduction, buttons and number cards move into a block underneath on the same near-black.
Which agents is Marble Bust 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 licensesBuilt on greensock/GSAP
What Lookbk adds on top of greensock/GSAP (Standard License): the footage, which was generated for Lookbk from a scene written for Lookbk (a still image animated into film, with the matte cut from every frame), and the layout, template and Footage Heroes kit, all written for Lookbk. GSAP (free under its Standard License) loads from a pinned CDN with SRI; the fonts are from Google Fonts.
Credits and licenses for the open-source software and fonts it uses are in NOTICE.md inside the download.