The page this skill built from examples/yuki-house, working in your browser. Opens in a new tab.
5.3-second example rendered by this skill from examples/yuki-house · 1280×720
Example settingswhat each example above was built from
examples/yuki-househero.json
- Brand
- Yuki House
- Headline
- Warm water and snow
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
- Shippori Mincho and Albert Sans 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
- Hotels, spas and ryokans open on a steaming rock pool in deep snow, with a warm lantern glowing beside it.
- A Shippori Mincho headline centred in the dusk sky, the warm lantern colour picked up by the button.
- On a phone the pool and lantern fill the screen and the headline sits in the snowy sky above them.
Not for
- Your own video: the layout and colours are set for this film (steam curling off a rock hot-spring pool in deep snow at dusk)
- 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: steam curling off a rock hot-spring pool in deep snow at dusk, snowflakes falling past a glowing stone lantern. It uses a centred layout: the wordmark in the middle of the bar, a two-line headline centred and set very large, the introduction under it and the button at the foot. 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 hotel, spa, ryokan, skincare, tea or any calm, warm, wintry brand.
Example request
Make a Snow Onsen hero for our winter spa: 'Slow down, / warm up', a booking button, and record the phone video.
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/yuki-house/hero.json(Yuki House, a mountain ryokan with hot springs) 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.md7.91 KBthese instructions.
- examples/
- examples/yuki-house/739 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.53 KBevery field of
hero.jsonwith its limit, plus the film's length, the colours, fonts and framing. - template/hero.html5.10 KBthe design: its CSS and the markup of the words.
- NOTICE.md883 B
- TESTED.json249 B
19 files · 64.4 KB · installs to ~/.claude/skills/snow-onsen-hero for Claude Code and ~/.agents/skills/snow-onsen-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
Do the snowflakes jump when the film restarts?
No. The film's last frame is its first and the end is cross-faded into the start, so the snow keeps falling.
How long can the headline be?
Two centred lines of up to 10 characters each; the build refuses anything longer.
Does it suit summer brands?
It is built around snow and steam, so it reads as winter. For a warm-weather spa another Loop Hero fits better.
Which agents is Snow Onsen 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.