The page this skill built from examples/kaamos, working in your browser. Opens in a new tab. Also: Hush.
12-second example rendered by this skill from examples/kaamos · 1280×720
What you get
- A self-contained index.html hero and an embed.html to paste into an existing site
- One to four aurora curtains in your two colors over seeded peaks, a frozen lake and a pine treeline
- 18 documented settings: loop length, curtains, fold, rays, fringe, height, horizon, peaks, trees, stars, snowfall, glow and a corner caption
- Left, right or centered layouts, with the sky and range above the copy on phones
- A seamless loop of 8 to 20 seconds, and an illustrated SVG still for reduced motion or no WebGL
- Contrast and layout checks at 390, 768, 1024 and 1440 px
- A frame-perfect MP4 (1080p by default, portrait sizes too) and a poster, the same on any machine
- Open-source licenses for every part it builds on
Good fit
- Hotels, glass cabins and travel brands in the far north can open their site with aurora curtains swinging over a snowy range and a frozen lake.
- Sleep and meditation apps can use a calm night sky, with centered copy and up to 4 tall curtains, as a quiet backdrop for their words.
- Teams launching on social can record a seamless video loop of 8 to 20 seconds, stepped frame by frame, that comes out the same on any machine.
Not for
- Light or daytime brands: the build only accepts a dark night background
- Full landing pages below the hero (see the Landing Pages series)
- Showing a real place or photo: the landscape is generated, not a map
About this skill
A night-sky hero section with the northern lights. Aurora curtains hang over a snowy mountain range: their hems fold and swing, glow brightest where they turn edge-on and shimmer with fine rays, green at the hem fading to violet. Stars twinkle, the aurora lights the snow on the peaks, a frozen lake mirrors the sky and a pine treeline stands in front while a few flakes fall. The sky loops seamlessly. Your agent puts in your colors, fonts, logo, headline and buttons, checks contrast at four widths and records a smooth 1080p video of it.
Example request
Build an Aurora Curtain hero for Kaamos Cabins, our glass cabins in Lapland: navy night, mint-green aurora fading to violet, headline 'We wake you when the sky moves.', our coordinates and Kp index in the corner, and record a 12-second loop for Instagram.
How it works
Your agent
- 1
Collect the brand
Every claim, price, date and coordinate in the copy must come from the person.
- 2
Write hero.json
Copy the closer example and replace everything:
examples/kaamos/hero.json(glass cabins in Lapland, copy on the left, green and violet, three curtains, a caption) orexamples/hush/hero.json(a sleep-sound app, copy centred, teal and pink, four tall curtains, a low range and no snow). - 3
Build
It lists every problem in
hero.jsonat once (missing fields, text over its limit, a setting out of range, colours that don't contrast, a light background, an aurora colour too dim to glow) and writes nothing until they're fixed. - 4
Check
It loads the page at 390, 768, 1024 and 1440 px and must say
okat each: nothing wider than the screen or cut off, readable contrast for every line of text (the build has already checked the text against the brightest aurora, snow and horizon that can sit behind it), names on every link and button, one h1. - 5
Look at it
They save
out/still-1440x900.pngandout/still-390x844.png, the live sky at 7 seconds. - 6
Record the video
It steps the hero through 12 seconds at 30 fps at 1920×1080, drawing each frame at exactly its time, and writes
out/preview.mp4(H.264, for X, LinkedIn, Product Hunt or a README) andout/poster.png(the frame at 7 s). - 7
Put it live
As a page: upload
out/index.htmlandout/assets/to any static host (Cloudflare Pages, Netlify, Vercel, GitHub Pages, S3).
- 1
You get
- out/index.html
- out/embed.html
- out/still-1440x900.png
- out/still-390x844.png
- out/preview.mp4
- out/poster.png


What you need
- Node.js 18 or newer. Nothing to install.
- Chrome, Chromium or Edge, for the checks and the recording (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). - At runtime, nothing but WebGL: the shaders are inlined in the page. Fonts load from jsDelivr (the pinned list) or Google Fonts; without the network the page uses system fonts. Without WebGL visitors see the illustrated still.
Last checked Oct 26, 2026: the package’s own build and render commands ran and passed.
If something goes wrong
build: fix hero.json firstEach line names the field and what to change; colour problems suggest a colour that works.
theme.background must be darkThe aurora is a night scene. Pick a deep navy, ink or plum.
The headline crosses a bright peak
Lower
peaks, raisehorizon, or move the copy to the other side withalign.
What’s in the download
- SKILL.md13.8 KB
- examples/
- examples/hush/1.98 KBa sleep-sound app · 2 files
- examples/kaamos/2.09 KBglass cabins with an aurora alarm · 2 files
- scripts/
- scripts/effect/the sky itself:
effect.mjs(its settings, checks, the caption and the illustrated still),effect.js(two WebGL1 shader passes: a column pass for the curtains, peaks and pines, and the picture),effect.css(the caption). - scripts/effect/effect.css927 B
- scripts/effect/effect.js23.3 KB
- scripts/effect/effect.mjs13.5 KB
- scripts/kit/the kit shared by every Motion Heroes skill: the build and checks (
build.mjs), the section's CSS (shell.css), the browser runtime (runtime.js: clock, pausing, pixel ratio, reduced motion, fallback), the recorder (record.mjs,cdp.mjs), the pinned fonts (fonts.json) andKIT.md, which explains them. - scripts/kit/build.mjs34.5 KB
- scripts/kit/cdp.mjs4.90 KB
- scripts/kit/fonts.json5.42 KB
- scripts/kit/KIT.md16.0 KB
- scripts/kit/record.mjs8.11 KB
- scripts/kit/runtime.js15.1 KB
- scripts/kit/shell.css9.41 KB
- scripts/kit/three.json6.35 KB
- scripts/build.mjs263 Bwhat you run. They call the Motion Heroes kit.
- scripts/check.mjs9.48 KBLookbk's checks, screenshots, colour maths and HTML writer.
- scripts/chrome.mjs3.63 KB
- scripts/color.mjs1.40 KB
- scripts/inline.mjs1.67 KB
- scripts/markup.mjs6.15 KB
- scripts/record.mjs255 B
- scripts/screenshot.mjs1.79 KB
- NOTICE.md1.75 KBwhere the effect comes from, and the fonts it loads.
- TESTED.json716 B
26 files · 182 KB · installs to ~/.claude/skills/aurora-curtain-hero for Claude Code and ~/.agents/skills/aurora-curtain-hero for other agents
Credits and licenses: NOTICE.md plus any LICENSE files inside the ZIP.
Similar Skills
View allDetails
- Output
- Animated WebGL hero · page + embed + 1080p video
- Needs
- Node.js 18+, Chrome (or Chromium/Edge), and ffmpeg for the video
- Series
- Motion Heroes · 50 skills
- Updated
- Oct 26, 2026
- Checked
- Oct 26, 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
Is it a real aurora forecast or a real landscape?
No. The curtains, peaks, lake and pines are generated from a seed, not taken from a map, photo or forecast. A corner caption of up to 64 characters can show your coordinates or Kp index, but it is text you supply, not live data.
Can I use a light background or daytime colors?
No. The build only accepts a dark night background, and the text color must reach 7:1 on it. The hem color must reach 5:1 and the top color 2.5:1, or the build stops and suggests a color that works. A deep navy or plum looks most like a real night.
What do visitors see on a phone, with reduced motion or without WebGL?
On phones the sky and the range come first, then the words, and the navigation pill is hidden. With reduced motion visitors get one frame of the live sky at 7 seconds. Without WebGL they see an illustrated SVG still with the same peaks and pines.
Which agents is Aurora Curtain 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
Lookbk wrote this package from scratch: the aurora, mountain, lake and treeline shaders, the illustrated still, the Motion Heroes kit and the examples. A few hash lines are adapted from Dave Hoskins' "Hash without Sine" (MIT). 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.