For the complete documentation index, see llms.txt. Markdown variants are available by appending .md to any URL or sending an Accept: text/markdown header. An agent skill is available at /.well-known/agent-skills/site-skill.md.
/
163
Sponsor

ORB-10

A lattice of light knitted into the ball's own skin

Installation

$ pnpm dlx shadcn@latest add @shadercn/orb-10

Usage

import { Orb10 } from "@/components/orbs/orb-10";
<Orb10 size={280} state="idle" />

Props

Component Props

PropTypeDefaultDescription
state"idle" | "thinking" | "speaking""idle"Drive preset the orb eases toward
sizenumber280Rendered size in CSS pixels
paramsPartial<Record<string, number>>-Shader param overrides, see Shader Props
colorsPartial<Record<string, string>>-Shader colour overrides as hex strings
statePresetsPartial<Record<OrbState, Record<string, number>>>-Replace the built-in per-state param presets
stateColorsPartial<Record<OrbState, Record<string, string>>>-Replace the built-in per-state colours
stateVolumesPartial<Record<OrbState, { input?: number; output?: number }>>-Pin the drive volumes a state settles on
volumes{ input?: number; output?: number }-Drive the orb directly, bypassing synthesis
pausedbooleanfalseFreeze the frame loop
pauseOffscreenbooleantrueStop rendering while scrolled out of view
maxDprnumber2Upper bound on the device pixel ratio
classNamestring-Class on the wrapper element
styleCSSProperties-Inline style on the wrapper element
ariaLabelstring-Accessible name for the canvas

Shader Props

Pass any of these through params; each is a single f32 uniform read by the shader.

ParamLabelRangeStepDefault
speedAnim speed0.015 – 100.050.6
scrollClimb0 – 80.031.2
camDistCamera distance1 – 500.37
focalLens0.15 – 150.052
shellRShell radius0.2 – 200.12.6
wrapWraps around1 – 1418
climbBand spacing0.05 – 120.054
turbWarp0 – 30.020.35
layerLayer offset0 – 20.010.5
cellLattice weight0 – 20.010.45
stepScaleStep scale0.02 – 30.0050.15
hueStepLayer hue0 – 30.010.4
spreadColour spread0 – 30.021
envRadiusEnvelope radius0.15 – 200.12.9
envCoreEnvelope core0.3 – 1.020.010.92
fillBody fill0 – 400.050.1
stepClampStep clamp5 – 50005300
scatterDiffusion0 – 0.20.00050.004
exposureExposure0.05 – 5000.530
contrastContrast0.15 – 150.051.15
saturationSaturation0 – 40.021.2
alphaGainAlpha gain0.05 – 150.12
edgeEdge sharpness0 – 10.011
edgeFadeHalo falloff0.1 – 30.0150.98

Colours are passed through colors as hex strings.

ColourLabelDefault
tintTint#ffffff

Credits

Based on original work by XorDev.