An open-source, login-free catalog of interactive Three.js/WebGL UI components with live renderers and full React source.
DavidHDev/canvas-ui
A copy-in library of 35 framework-agnostic canvas UI effects, such as liquid, glass and fire, that run over live HTML content.
- Stars
- 5,346
- Forks
- 273
- Open issues
- 4
- Last commit
- last month
What is it?
Canvas UI is a collection of creative visual components drawn on canvas. Effects such as fluid simulation, glass distortion, fire, glitch and 3D scenes run on top of a page's live, interactive HTML, so text stays selectable and links stay clickable. Components are provided for React, Solid, Preact, Vue, Svelte and vanilla JavaScript.
Each component is installed with the shadcn CLI, which copies its source into the project's own components folder for editing rather than adding it as a package dependency. Every effect ships in a WebGL build (raw WebGL2 with GLSL, plus three.js for the 3D effects) and a WebGPU build that uses vgpu and WGSL. Where HTML-in-canvas is unavailable, the HTML effects fall back to GPU overlays, and the wrapped content still renders.
The project also includes an MCP registry so AI assistants can browse and install components, and a documentation site with an interactive playground.
Key features
- 0135 effects covering fluid, fire, glass, retro glitch, particles and 3D objects
- 02Components for React, Solid, Preact, Vue, Svelte and vanilla JavaScript
- 03WebGL (GLSL) and WebGPU (WGSL via vgpu) renderer builds
- 04Source copied into your project through a shadcn-compatible registry
- 05Wrapped content stays live and interactive under the effect
- 06MCP support so AI assistants can find and install components
Use cases
- Adding a liquid or glass hero effect to a marketing landing page
- Giving a portfolio or design-focused site interactive visual polish
- Applying a retro glitch or ASCII lens to a creative web project
- Rendering a GLB or SVG model as a 3D scene inside a React or Vue app
Quick start
- 1
Run shadcn init if you have not set up shadcn yet
npx shadcn@latest init - 2
Add a component such as Liquid for React
npx shadcn@latest add @canvas-ui/liquid-react - 3
Wrap your page with the component in your code
Things to know
- The README says the license is MIT plus Commons Clause, which restricts selling the software, while the metadata shows no detected license.
- Most effects rely on the experimental HTML-in-canvas API, with GPU overlay fallbacks elsewhere.
- The WebGPU builds need recent browsers such as Chrome or Edge 113+, Safari 26+, or Firefox 141+.
In collections
Topics
FAQ
- What is canvas-ui?
- A copy-in library of 35 framework-agnostic canvas UI effects, such as liquid, glass and fire, that run over live HTML content. Canvas UI is a collection of creative visual components drawn on canvas. Effects such as fluid simulation, glass distortion, fire, glitch and 3D scenes run on top of a page's live, interactive HTML, so text stays selectable and links stay clickable. Components are provided for React, Solid, Preact, Vue, Svelte and vanilla JavaScript.
- Is canvas-ui free to use? What license does it have?
- canvas-ui is open source under the Other license. Check the license terms before using it in commercial products.
- Is canvas-ui still maintained?
- Updated within 6 months. The last commit to canvas-ui was on Oct 3, 2026.
- What can I use canvas-ui for?
- Adding a liquid or glass hero effect to a marketing landing page Giving a portfolio or design-focused site interactive visual polish Applying a retro glitch or ASCII lens to a creative web project Rendering a GLB or SVG model as a 3D scene inside a React or Vue app
- How do I install canvas-ui?
- Run shadcn init if you have not set up shadcn yet: npx shadcn@latest init Add a component such as Liquid for React: npx shadcn@latest add @canvas-ui/liquid-react Wrap your page with the component in your code
- Where can I get canvas-ui?
- The source code and installation instructions are on GitHub: https://github.com/DavidHDev/canvas-ui
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Zero-dependency WebGL-style canvas shaders for web backgrounds and textures, usable via npm (React or vanilla JS) or designed visually in Paper.
WebGPU shader effects packaged as drop-in components for React, Vue, Svelte, Solid and plain JavaScript.
A React UI component library built on React Aria and Tailwind CSS v4, formerly known as NextUI.
A library of 215+ free, animated and customizable React and Next.js components and backgrounds, installable via shadcn or jsrepo.
A React and Tailwind CSS component library of animated UI components, effects, and ready-made blocks built on Framer Motion, distributed in a shadcn-style setup.