APERVEIL / DOCUMENTATION

From shader to shipped interface.

A small, practical guide to choosing a surface, making it yours and giving it a home in your project.

01

Getting started

Each shader becomes a React component in your own project: its source is installed next to your code (like shadcn/ui), and it runs on @aperveil/react, a thin adapter over the framework-independent @aperveil/runtime. Every control from the editor is a typed prop. You do not need an Aperveil account to explore the current preview.

Free kits can be downloaded without an account. To copy an official Pro component or download its kit, sign in and use an active Aperveil Pro or All Access grant. Alpha grants are managed by the Aperveil team; account creation alone does not unlock Pro.

  1. 1

    Choose a shader.

    Open its landing, try a Color Look and select Open editor.

  2. 2

    Add it to your project.

    Download and extract the complete Export Kit from the editor. The values you tune become the component's defaults. The kit includes the local Aperveil packages you need; public npm and CLI distribution is coming soon.

  3. 3

    Install the adapter.

    Use your project’s package manager. Standard shaders need @aperveil/react (it brings @aperveil/runtime); geometry renderers such as Glass Reel and Glass Medusae document their direct vgpu dependency.

Download and extract an Export Kit first, then run this command from its root. The required Aperveil packages are included; public npm and CLI releases are coming soon.

terminal
npm install ./vendor/aperveil-runtime-0.1.0.tgz ./vendor/aperveil-react-0.1.0.tgz
Find your first surface
02

Integration & sizing

Extract the kit into your project. Keep the generated files together and import the component from its local path. This example uses Dot Grid; the editor generates a component name from the shader you export.

Surface.tsx
"use client";

import DotGrid from "./DotGrid";

export default function Hero() {
  return (
    <DotGrid
      className="hero-shader"
      density={72} background="#0d1017ff"
      fallback={<div className="hero-shader-fallback" />}
    />
  );
}

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

Glass Reel: media and live controls

Keep GlassReel.tsx and the glass-reel folder together. Pass your hosted image/video URLs through media, update controls with parameters, and use paused and fallback for motion and browser support. Preview uploads are not included; external media needs CORS. Up to eight items, including two silent looping videos, share the glass surface.

The kit includes its geometry renderer and texture handling. The raw WGSL alone is not a fullscreen shader. Pro access is required for the official download.

Glass Reel integration

Give the parent an explicit height and apply the stylesheet rule in the example. The canvas fills that container. Keep headings, links and important content in HTML above or beside the shader; the canvas is a visual layer, not your document.

Working outside React?

The shared runtime is framework-independent, so vanilla JavaScript hosts can call startAperveilShader directly. A ready-made Svelte or WordPress adapter is not published yet. Standard kits also include raw WGSL for custom WebGPU hosts; WGSL by itself still requires the matching uniforms, bindings, pointer state and lifecycle.

03

Parameters & Color Looks

Color Looks change colors only. Geometry and motion stay as you set them. Changing a Look does not reset those controls; Reset all restores the shader’s product defaults.

Standard shaders

Your settings, saved.

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.

Multi-pass simulations

Live, preview-only.

Chromatic Vapor and Cymatic Dust require multi-pass simulation runtimes. Their previews and controls work in the editor, but standalone Export Kits are not available yet.

Each shader’s landing lists all of its props with types, defaults and ranges, and the README in its kit repeats them. Leave a prop out to keep the exported value; change one and the running shader updates without restarting. Every component also takes className, style, paused, fallback, onReady and onError. Keep your interface typography in HTML so it remains readable and accessible independently of the shader.

04

Browser support & performance

Live rendering requires WebGPU and a secure context. Browser support alone does not guarantee an available GPU adapter. Aperveil landings use poster fallbacks; most have a poster for each Look, while Glass Reel uses one shared poster.

Standard Export Kits do not bundle that landing poster. Add your own fallback in the host interface, keep essential content readable without WebGPU and respect reduced-motion preferences.

Start with a sensibly sized surface, avoid unnecessary simultaneous canvases and profile on your target devices. Shader timings are recorded samples, not a promise of frame rate: compare the same resolution, quality and DPR, and test idle and pointer movement separately.

Read the measurement, not just the number.

GPU timestamps measure GPU work when supported. Wall-clock timings also include scheduling and overhead; legacy samples with no method recorded must not be treated as pure GPU measurements. Check the shader’s own performance notes for device, resolution and measurement date.

05

License & access

Free shaders, block studios and Export Kits are available without an account. Pro items are coming soon; their demos, studios and downloads will open in a later release. Purchasing is not open yet.

The published catalog has 36 Free and 32 Pro shaders. Aperveil Pro includes premium shaders and premium blocks at $99 USD one-time for one developer and unlimited permitted personal, client and SaaS interface projects. Blocks are currently previews; source export and CLI installation are being prepared.

Templates are separate: All Access stays coming soon until website templates are ready. Its price and upgrade terms have not been announced. Purchasing is not available yet.

One payment, no subscription. Use the versions you download for as long as your license permits. Published updates and future additions to the same Aperveil shader and block collections are included during the product’s operating life. Website templates, separate products, extra developer seats, custom development and 24/7 support are excluded. Lifetime does not promise a release schedule, perpetual hosting or support for every future browser.

This is product planning, not a new license agreement. Follow the license notices supplied with the source you download; the preview does not retroactively change those notices or grant every future product entitlement.

Read the License draft, Terms, Privacy and Refund policy before the offer opens.

Read the planned access details