v2.0.0
30 FPS demo budget

Decorative shaders are capped and framed inside a bounded preview surface.

Styled quick start

Copy this entrypoint first. It includes the imports required to get the component on screen.

svelte
<script lang="ts">
  import '@dryui/ui/themes/default.css';
  import '@dryui/ui/themes/dark.css';
  import { ShaderCanvas } from '@dryui/ui';
</script>

<ShaderCanvas>Content</ShaderCanvas>

Import options

Root package

ts
import { ShaderCanvas } from '@dryui/ui'

Per-component subpath

ts
import { ShaderCanvas } from '@dryui/ui/shader-canvas'

API

Props, CSS variables, and the public data attributes you can target when styling.

Prop Type Description Default Required Bindable
fragmentShader
string
vertexShader
PrimitiveShaderCanvasProps['vertexShader']
autoUniforms
PrimitiveShaderCanvasProps['autoUniforms']
uniforms
PrimitiveShaderCanvasProps['uniforms']
pixelRatio
PrimitiveShaderCanvasProps['pixelRatio']
fps
PrimitiveShaderCanvasProps['fps']
paused
PrimitiveShaderCanvasProps['paused']
fallback
PrimitiveShaderCanvasProps['fallback']
children
Snippet
Content rendered inside the component.
preset
gradient-flowparticle-fieldwave-distortionmesh-gradientliquid-metal
themeColors
boolean
aspectRatio
string