Two packages, one API
Paper Shaders is split into two npm packages so you only pull in what your stack needs.| Package | Use case |
|---|---|
@paper-design/shaders | Vanilla JS, any framework, or as a base for custom integrations |
@paper-design/shaders-react | React 18 and 19, with ready-made components and preset exports |
Key features
Zero dependencies
Pure WebGL2 — no Three.js, no PIXI, no runtime overhead. Each shader is a self-contained GLSL fragment shader string.
Animated by default
Control speed, direction, and frame offset. Set
speed={0} for a static, zero-cost render with no recurring rAF cost.Fully typed
Every shader exposes TypeScript
Params and Uniforms interfaces extracted directly from source.SSR safe
Undefined uniforms are gracefully skipped during server-side rendering — no
window or document errors at build time.Image filters
Apply fluted glass, water distortion, dithering, heatmap, liquid metal, and halftone effects to any image.
Designed in Paper
Configure shaders visually in the Paper design tool and export directly to production-ready code.
Versioning
Paper Shaders is in active development. Breaking changes ship under0.0.x versioning while the API stabilises.
Get started
React quickstart
Add your first shader to a React app in under two minutes.
Vanilla JS quickstart
Use shaders in any framework — or no framework at all.
Browse shaders
Explore all 28 shaders: gradients, noise, patterns, and image filters.
API reference
Full TypeScript API for
ShaderMount, sizing, and all shader parameters.