The page this skill built from examples/stillwater, working in your browser. Opens in a new tab. Also: Ledgerline.
12-second example rendered by this skill from examples/stillwater · 1280×720
What you get
- A self-contained index.html hero and an embed.html to paste into an existing site
- A drifting gradient in 3 to 6 of your colors, light or dark, the same drift for the same seed
- A floating glass disc or pill that refracts the gradient, with dispersion, rim light, ribs and a soft shadow
- 17 documented effect settings: seed, colors, cycle, drift, softness, warp, grain, calm, shape, lens size, ribs, refract, dispersion, rim, shadow, float and breathe
- An SVG still for no WebGL, and one real frame for reduced motion, so the hero is never blank
- Contrast and layout checks at 390, 768, 1024 and 1440 px, with every color tested against the ink
- A frame-exact 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
- Wellness, sleep and beauty brands can drift 3 to 6 soft pastel colors behind the headline, with a smooth glass disc breathing beside it.
- SaaS and fintech teams can take deep tones on a dark page with a fluted glass pill for a sharper, more technical look.
- Teams that need the copy to stay readable get a build that rejects any gradient color leaving the text under 4.6:1.
Not for
- Loud, high-contrast brands: the gradient is soft by design and the build rejects colors the ink cannot read on
- Reproducing another company's signature gradient: bring your own palette
- Full landing pages below the hero (see the Landing Pages series)
About this skill
A hero section on a soft, slowly drifting mesh gradient: three to six of your colors blend into each other in linear light, folded by a gentle warp, with a calm patch held behind the copy so the words always read. A pane of frosted glass floats beside the copy, a disc or a pill, and bends the gradient behind it: the view inside flips and magnifies, the edges split into a faint spectrum, a bright rim and a soft highlight catch the light, and optional ribs fluted into the glass slice it into strips. Fine film grain at 24 frames a second sits over everything. Your agent sets your colors, fonts, logo and words, checks contrast at four widths and records a seamless 12-second 1080p loop.
Example request
Build a Mesh Gradient Grain hero for Stillwater, a breathwork app: peach, rose, sage, cream and periwinkle on warm paper, a glass disc beside the copy, headline 'Breathe out the whole day.', and record the 12-second loop.
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/stillwater/hero.json(a breathwork and sleep app, light pastels, a breathing glass disc, copy on the left) orexamples/ledgerline/hero.json(a bookkeeping tool, deep teal, plum and moss, a fluted glass pill, 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 gradient colour the text can't sit on) 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, names on every link and button, one h1. - 5
Look at it
Look at both: do the colours meet in clean fields, is the grain visible but quiet, does the lens show the colours turned over inside it, is the patch under the copy calm without looking like a box (lower
calmif it does)? - 6
Record the video
It steps the hero through one loop at 30 fps at 1920×1080 and writes
out/preview.mp4(H.264) andout/poster.png(the frame at 3 s). - 7
Put it live
As a page: upload
out/index.htmlandout/assets/to any static host.
- 1
You get
- out/index.html
- out/embed.html
- out/preview.mp4
- out/poster.png
- out/assets/logo.svg


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). - Nothing else at runtime: the effect is hand-written WebGL inlined in the page. Only the fonts load from a CDN; without the network the page uses system fonts.
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; for a gradient colour, move it toward the background's lightness or raise
calm.The colours look muddy
Use fewer colours, or colours closer in lightness; raise
softnessfor a smoother wash.The lens looks like a flat disc
Raise
refract(0.8 or more) andrim; colours with more contrast between them show the refraction better.
What’s in the download
- SKILL.md12.4 KB
- examples/
- examples/ledgerline/2.10 KBLedgerline, a bookkeeping tool · 2 files
- examples/stillwater/2.05 KBStillwater, a breathwork and sleep app · 2 files
- scripts/
- scripts/effect/the gradient:
effect.mjs(its settings, contrast checks and the SVG still) andeffect.js(one WebGL pass: the drifting colour points, the linear-light blend and warp, the lens's refraction, fringes, rim and shadow, the calm patch and the grain). - scripts/effect/effect.js11.2 KB
- scripts/effect/effect.mjs6.88 KB
- scripts/kit/the kit shared by every Motion Heroes skill: build and checks, the section's CSS, the browser runtime (clock, pausing, pixel ratio, reduced motion, fallback), the recorder, the pinned fonts and
KIT.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.47 KBwhere the effect comes from, and the fonts it loads.
- TESTED.json647 B
25 files · 161 KB · installs to ~/.claude/skills/mesh-gradient-grain-hero for Claude Code and ~/.agents/skills/mesh-gradient-grain-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
Can I use bright, high-contrast colors?
Not behind the text. Each gradient color must leave the text at 4.6:1 once washed toward the background by calm, so keep colors near the background’s lightness: pastels on light pages, deep tones on dark ones. The build names any color that is too far off, and raising calm helps.
Will the grain make the video files large?
Grain is hard on video encoders. The clip stays sharp at the default quality, but a heavier grain setting (0 to 1, default 0.45) makes bigger files. Record cycle seconds, 12 by default, for a clean loop at 1920×1080.
What do reduced-motion and no-WebGL visitors see?
Visitors who ask for reduced motion get one real frame of the hero at 3 seconds. Browsers without WebGL get an SVG still of blurred color fields, grain and the glass. On a phone the lens comes first, then the words.
Which agents is Mesh Gradient Grain 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: the mesh gradient, the glass lens shader, the grain, the Motion Heroes kit and the examples. No third-party code is included. 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.