The page this skill built from examples/halcyne, working in your browser. Opens in a new tab. Also: Ordalis.
12-second example rendered by this skill from examples/halcyne · 1280×720
Example settingswhat each example above was built from
examples/halcynehero.json
- Brand
- Halcyne
- Headline
- Every frame, in its true spectrum
- Badge
- Colour grading · Release 4
- Colors
- background #07080c · ink #f4f1ea · accent #ffd27a
- Mode
- dark
- Fonts
- Fraunces and Inter
examples/ordalishero.json
- Brand
- Ordalis
- Headline
- Read the river by its light
- Badge
- Spectral sensing for water
- Colors
- background #040b0d · ink #e8faf5 · accent #3ee6c1
- Mode
- dark
- Fonts
- Space Grotesk and IBM Plex Sans
What you get
- A self-contained index.html hero page in your colours, fonts, logo and copy
- An embed.html section to paste into an existing site
- A glass prism splitting a beam into a fan that lands as a glowing band on the page edge, its angle following the pointer
- A full rainbow or a three-colour brand spectrum, with dust, bloom and haze you can tune
- Left, right or centred layouts, with the prism above the copy on phones
- A layout and contrast check at 390, 768, 1024 and 1440 px, and an SVG still for reduced motion and browsers without WebGL
- A frame-exact 1080p MP4 that loops seamlessly, and a poster image
- Open-source licenses for every part it builds on
Good fit
- Colour grading, photo and imaging software can show light breaking into colour beside a headline about getting colour right.
- Sensing, optics and science companies can tint the fan to their own brand colours for a calm, technical first screen.
- A product team that needs a looping hero video for a launch post as well as the live page gets both from one file.
Not for
- Light or pastel pages, since the build refuses a background that is not near-black
- Heroes built around a product photo or a 3D model of your product
- Pages that must work without JavaScript or WebGL beyond a still picture
- Long lit phrases in the headline, since the spectrum underline keeps the phrase on one line
About this skill
A dark hero section where a thick triangular glass prism floats beside your headline. A thin white beam comes down out of the dark, strikes one face with a small star of light and leaves the next face split into a fan of colours that runs across the page and lands on its far edge as a glowing band. The split is worked out with real refraction for each end of the spectrum, so when the beam's angle follows the pointer the fan swings and opens the way real light does. Dust motes glint only where the light reaches them, with soft bloom and a faint haze. The fan can be the full rainbow or your brand's own three colours, and the video loops without a seam.
Example request
Build a dark website hero for our product with a glass prism splitting a white beam into a spectrum in our brand colours, the beam following the pointer, plus a looping video of it.
How it works
Your agent
- 1
Collect the brand
Every claim, price and date in the copy must come from the person.
- 2
Write hero.json
Copy the closer example and replace everything:
examples/halcyne/hero.json(colour-grading software: the full rainbow, a serif headline, copy on the left) orexamples/ordalis/hero.json(a water-sensing company: a brand band of teal, mint and violet, a grotesque headline, copy on the right). - 3
Build
It lists every problem in
hero.jsonat once (missing fields, text over its limit, a setting out of range, a background too light for light to read, a band colour too dark to glow, a beam too dim, text colours that don't contrast) 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 (measured against the background colour the scene is drawn on; the build has already checked the text against the glow that can reach it), names on every link and button, one h1. - 5
Look at it
The first two save
out/still-1440x900.pngandout/still-390x844.png, the live effect at 3 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 3 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 on macOS, Windows and Linux; set
CHROME_PATHif they don't). - ffmpeg, for the video (
brew install ffmpeg,winget install ffmpeg,apt install ffmpeg; or setFFMPEG_PATH). - Internet access when the page is opened, for the fonts only (jsDelivr at pinned versions with integrity hashes). The effect itself is raw WebGL written into the page, with no library to load. Without the network, visitors see the effect in system fonts.
Last checked Nov 1, 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.
"too light for a beam of light to read"
The background must be near-black. Darken it; keep the brand's light colour for
inkoraccent.record: the effect didn't startThe page fell back to its still picture: Chrome has no WebGL. On a server without a GPU, Chrome uses its software renderer, which the recorder enables; it is slower but works.
What’s in the download
- SKILL.md15.6 KB
- examples/
- examples/halcyne/1.89 KBcolour-grading software, the full rainbow, copy left · 2 files
- examples/ordalis/1.91 KBa water-sensing company, a teal-to-violet brand band, copy right · 2 files
- scripts/
- scripts/effect/the prism itself:
effect.mjs(its settings, checks and still picture),effect.js(the refraction maths and the two WebGL shaders: the room, beam, fan, band and glass in one, the dust in the other),effect.css(the section's dress: hairlines, the spectrum rules, the main button's spectral rim). - scripts/effect/effect.css2.73 KB
- scripts/effect/effect.js20.2 KB
- scripts/effect/effect.mjs10.6 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), the pinned three.js catalogue (three.json, unused by this effect) 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.md2.06 KBwhere the effect comes from, and the fonts it loads.
- TESTED.json620 B
26 files · 180 KB · installs to ~/.claude/skills/prism-light-hero for Claude Code and ~/.agents/skills/prism-light-hero for other agents
Credits and licenses: NOTICE.md plus any LICENSE files inside the ZIP.
Similar Skills
View allDetails
- Output
- WebGL glass prism · page + embed · 1080p loop
- Needs
- Node.js 18+, Chrome (or Chromium/Edge), and ffmpeg for the video
- Series
- Motion Heroes · 71 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
Is the way the light splits physically accurate?
The fan's angles come from Snell's law, worked out every frame for the red and the violet end of the spectrum as the beam enters and leaves the glass. The glass's dispersion is exaggerated so the fan reads at a glance, and the bloom and haze are a stylised picture.
Can the spectrum use our brand colours instead of a rainbow?
Yes. Set spectrum to brand and pick bandStart, bandMid and bandEnd. Each must reach 3:1 on the background. A strong colour at each end with a pale one in the middle reads best, such as teal, mint-white and violet.
How does the pointer change it, and what happens in the video?
Moving the pointer swings the beam's angle, and the fan follows. Before anyone moves it, and in the recording, the beam follows a slow scripted swing that comes back to its start every 12 seconds by default, so the video loops without a seam.
Which agents is Prism Light 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 on raw WebGL1 with no libraries; one small hash function is adapted from Dave Hoskins' Hash without Sine (MIT licence). 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.