
Liquid Metal Shader
FreeCreate stunning real-time metallic surfaces in HTML.
Free · Opens the source repo
What Liquid Metal Shader does
The Liquid Metal Shader skill allows developers to create a visually striking, real-time metallic surface rendered in a single index.html file. This shader mimics the appearance of molten chrome with an iridescent sheen, making it ideal for projects that require a reflective, flowing surface. The skill is designed to be straightforward, with a focus on producing high-quality visual output without the need for external resources or textures.
To effectively use this skill, users should start by reviewing the provided example.html, which demonstrates the core concepts of a domain-warped noise field and metallic shading techniques. The shader employs a combination of diffuse and specular lighting, alongside an iridescent cosine palette, to create a realistic metallic effect. The workflow is structured in clear steps, guiding users through selecting surface types, building the HTML file, and ensuring the final output meets performance and visual quality standards.
This skill is particularly useful for developers and designers working on web projects that require dynamic and engaging visual elements. It can be applied in various contexts, such as interactive web applications, digital art installations, or product visualizations where a metallic finish is desired. The ability to render continuously at approximately 60 frames per second ensures a smooth user experience, making it suitable for performance-sensitive applications.
Overall, the Liquid Metal Shader skill is a practical tool for those looking to enhance their web designs with sophisticated visual effects, providing a foundation for further exploration in WebGL and shader programming.
When to use it
Use this skill when you need to create a visually appealing metallic surface for web applications, particularly when the design brief specifies terms like 'liquid metal', 'holographic', or 'reflective'.
When not to use it
This skill may not be suitable for projects that require complex textures or 3D models, as it focuses solely on shader-based rendering without external assets.
What you can build with it
Interactive Web Applications
Use the Liquid Metal Shader to create dynamic backgrounds or elements in web applications that require a high-quality metallic look.
Digital Art Installations
Incorporate the shader into art projects that showcase real-time graphics, enhancing visual engagement with reflective surfaces.
Product Visualizations
Utilize the skill to render products with a metallic finish in online showcases, providing a realistic representation of materials.
How to install Liquid Metal Shader
View source1. Install with the skills CLI
npx skills add nexu-io/open-design/webgl-liquid-metal --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by nexu-ioLiquid Metal Skill
Produce a single self-contained index.html that renders a real-time metallic surface full-screen — molten chrome with an iridescent sheen — with a clean typographic overlay on top.
Why this is a powered artifact
Open Design detects getContext('webgl2') and renders this file in powered preview — a cross-origin-isolated iframe with allow-same-origin. The full GPU pipeline is available; you do not need to work around the opaque sandbox.
Resource map
webgl-liquid-metal/
├── SKILL.md ← you're reading this
└── example.html ← a working domain-warped chrome shader (READ FIRST)
Workflow
Step 0 — Read the reference
Read example.html end to end. Note the shape: a domain-warped fbm height field; a surface normal reconstructed from that field's gradient (finite differences); metallic shading = diffuse chrome ramp + a sharp specular (pow(dot(n,h), 80)) + a fresnel term; and an iridescent cosine palette (0.5 + 0.5*cos(2π(x + phase))) driven by height and fresnel for the thin-film sheen.
Step 1 — Choose the surface
- Molten chrome (default): domain-warped fbm height, hard specular, cool grey base.
- Holographic foil: crank the iridescence, widen the palette phase spread, soften the specular.
- Oil slick: darker base, thinner high-frequency warp, stronger fresnel bands.
Step 2 — Build index.html
- One file, zero external requests. Fullscreen triangle + fragment shader.
- Reconstruct the normal from small height offsets (
e ≈ 0.0016); a sharp specular exponent (≥ 60) is what reads as "metal". - Keep the iridescence tasteful — tie it to fresnel/height so it appears at grazing angles, not everywhere.
- Compile shaders with error logging so a typo fails loudly, not silently black.
Step 3 — Overlay + brand
- Map the accent colors to the active DESIGN.md when one is present; otherwise a restrained metallic palette. The reference tints the hottest specular toward lime
#63fe13as the brand accent. - Headline ≤ 13ch plus one supporting line. Keep the metal as the hero.
Step 4 — Self-review (P0)
- Renders continuously at ~60fps; the FPS badge updates.
- Reads unmistakably as metal: a sharp, moving specular highlight.
- Iridescence is present but restrained (grazing angles), not a rainbow wash.
- Resizes crisply on window resize (no stretching / blur).
- Degrades to a message (not a blank page) if
webgl2is unavailable.
Frequently asked questions about Liquid Metal Shader
Similar skills
Algorithmic Art
Create generative art using p5.js and algorithmic philosophies.
Fal.ai Media Generation
Create images, videos, and audio with AI.
p5.js Production Pipeline
Create stunning generative art and interactive visuals.
ASCII Video Production
Transform videos into striking ASCII art animations.
Pixel Art
Transform images into retro pixel art and animations.
Generate Image
Create images quickly using AI providers.
