Silk Bands Free for Aperveil 1.0 WebGPU shader

Light, woven softly.

A satin-like fabric background for React with flowing folds, fine weave and directional sheen. Tune the folds, motion and palette in WebGPU.

Part of the Free collection for Aperveil 1.0. Public live preview and Color Looks are open. Free Export Kits do not require an account. Purchasing is not available yet.

Free for Aperveil 1.0React exportRaw WGSL

Inside Silk Bands.

Silk Bands shapes broad, irregular folds with analytic slopes and directional satin reflection. A fine weave adds restrained texture while pointer tug bends the local surface.

The shader approximates a fabric appearance. It does not simulate cloth mechanics, garment meshes, gravity or collisions.

2.949 ms GPU timestamp median; p95 4.325 ms. 1440x900 @ dpr 2; Metal driver on macOS Version 26.6.2 (Build 25G83); measured 2026-09-05. This is a recorded headless sample, not a browser FPS or mobile-performance guarantee.

Band count

Number of satin bands across the fabric.

Fold amount

How strongly the folds bend the bands.

Fold scale

Size of the folds; higher values make them smaller and more frequent.

Sheen

Brightness of the sheen.

Color Looks preserve these settings. Open the editor for all 13 controls.

From preview to your project.

Choose a Look, tune it in the editor, then download the Export Kit. Install the runtime and copy the generated component into your project.

Every control in the editor is a typed prop. Leave a prop out to keep the value you exported; change one and the running shader updates without restarting. Give the surface a size and pass fallback for browsers without WebGPU.

In Next.js, use a client component and give its container an explicit size. Keep headings, links and accessible content in HTML above the decorative canvas.

Part of the Free collection for Aperveil 1.0. Public live preview and Color Looks are open. Free Export Kits do not require an account. Purchasing is not available yet.

Open editor & export
Markdown guide

Usage example — download SilkBands.tsx from the editor first. This example imports that local file; it is not the shader component itself.

Terminal
npm install ./vendor/aperveil-runtime-0.1.0.tgz ./vendor/aperveil-react-0.1.0.tgz
SilkBands usage
"use client";

import SilkBands from "./SilkBands";

export default function Hero() {
  return (
    <SilkBands
      className="hero-shader"
      bands={10} background="#0a0812ff"
      fallback={<div className="hero-shader-fallback" />}
    />
  );
}

// .hero-shader { width: 100%; height: 560px; }

Download and extract the complete Export Kit first. Run its local package command from the ZIP root, then copy the component into your project. Public npm and CLI distribution is coming soon.

Made for a real interface.

Give a fashion or personal-care launch a tactile opening. Use a generous serif heading and let the wide folds remain visible beside the copy.

Silk Bands used behind an example interface
FORME / STUDIES IN SOFTNESSExample composition

A considered collection

Made to move with you.

Soft forms, subtle light and a quieter sense of occasion. A study in the things that feel right without asking for attention.

Movement

Ease in every gesture.

Material

Let the light tell the story.

Illustrative layout, not a customer project. The image is a still preview of the selected Look.

An illustrative layout. Your content stays in HTML; the shader sets the atmosphere.

Try this surface in the editor

Before you ship.

What this surface does, where it fits, and where it stops.

All shaders

Make Silk Bands yours.

Open editor