
Installs all 9 components. Without our CLI, run instead.
Glass UI publishes a shadcn registry at glass-ui.crenspire.com, with 9 components installable through the shadcn CLI.
Copy a prompt for your agent, copy the install command, or open the docs that ship it.
A group of buttons with glassy variants.
An image cropper component with optional glassy variant.
A date picker input component with glassy variants.
An empty state component with glassy variants.
A group of inputs with glassy variants.
A menu bar component with glassy variants.
A theme switcher component with optional glassy variant.
A loading spinner component with glassy variants.
A liquid glass component library inspired by Apple's design language, built with Next.js 16, React 19 and the shadcn registry. Glass that rests on the page's backdrop is drawn by a WebGL shader with real refraction; everything else gets a matching CSS liquid look.
Live site: glass-ui.crenspire.com
LiquidGlassProvider, glass is drawn by a WebGL shader: refraction, chromatic dispersion and a light-tracking rimregular, clear and tinted, plus a tint colour and per-instance glass={{ tint, frost }}Install components using the shadcn CLI with your preferred package manager:
pnpm:
pnpm dlx shadcn@latest add @glass-ui/button
yarn dlx shadcn@latest add @glass-ui/button
npm:
npx shadcn@latest add @glass-ui/button
bun:
bunx shadcn@latest add @glass-ui/button
After installation, import and use components in your project:
import { Button } from "@/components/ui/button"
import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"
export function Example() {
return (
Click me
Beautiful Card
Your content here
)
}
Note: The import path depends on your project's component directory configuration. By default, shadcn CLI installs components to
@/components/ui/.
Visit the full documentation for:
Explore and test components interactively with Storybook:
# Start Storybook
pnpm storybook
# Build Storybook (static)
pnpm build-storybook
Storybook provides:
Visit http://localhost:6006 after starting Storybook.
components/ui/) ā shadcn-style components with the liquid material: variant="liquid" (default) or "default", plus material, tint, glass and webgl props.components/ui/glass/) ā the components you install; they wrap the base components and add effects such as glow, shimmer and ripple.lib/liquid-glass/, components/ui/liquid/) ā the WebGL renderer, LiquidGlassProvider, and the material.ts helper every component uses.Regular liquid glass (default)
Clear glass
Tinted glass
Custom tint and frost
:root {
--lg-rim-hi: rgba(255, 255, 255, 0.8);
--lg-rim-lo: rgba(255, 255, 255, 0.18);
--lg-highlight: rgba(255, 255, 255, 0.6);
--lg-drop: rgba(15, 23, 42, 0.14);
}
.lg-regular { --lg-base: rgba(255, 255, 255, 0.42); --lg-blur: 16px; }
See components/ui/glass/GLASS_CUSTOMIZATION.md for the full reference.
Wrap your app in LiquidGlassProvider and glass resting on the backdrop is drawn with real refraction,
dispersion and a light-tracking rim. Everything else keeps the CSS look, as does the whole app when WebGL is
unavailable or the user prefers reduced transparency. See components/ui/liquid/README.md.
And more! See the full component list.
git clone https://github.com/crenspire/glass-ui.git
cd glass-ui
pnpm install
pnpm dev # documentation site on http://localhost:3000
pnpm storybook # Storybook on http://localhost:6006
pnpm test # unit tests (vitest)
pnpm registry:build # rebuild public/r/*.json from registry.json
Running pnpm build while pnpm dev is running overwrites the dev server's output; restart pnpm dev afterwards.
glass-ui/
āāā app/ # Documentation site (Next.js app router, static export)
ā āāā (settings)/ # Components, docs and themes pages
ā āāā blocks/ # Blocks gallery
āāā components/
ā āāā ui/ # Base components (liquid material)
ā āāā ui/glass/ # Glass UI components (what users install)
ā āāā ui/liquid/ # LiquidGlassProvider and lens filter
ā āāā demos/ # One live demo + code snippet per component
ā āāā shell/ desktop/ settings/ # Site chrome: menu bar, dock, widgets, settings layout
ā āāā blocks/ # Page-level blocks
āāā lib/
ā āāā liquid-glass/ # WebGL engine and material helper
ā āāā wallpapers/ # Generated, animated wallpapers
āāā stories/ # Storybook stories
āāā public/r/ # Built registry served to `shadcn add`
āāā registry.json # Component registry
The site is a static export hosted on GitHub Pages at glass-ui.crenspire.com.
.github/workflows/deploy-pages.yml runs on every v* tag (and manually from the Actions tab). It tests, builds Storybook into public/storybook, runs next build (which writes out/) and publishes out/ to Pages.public/CNAME keeps the custom domain; DNS has a CNAME record glass-ui ā crenspire.github.io./r/*.json) and Storybook (/storybook) are served from the same site, so pnpm dlx shadcn@latest add @glass-ui/ keeps working.To release:
git checkout -b release/x.y.z develop
# bump "version" in package.json, update CHANGELOG.md
git tag -a vx.y.z -m "Glass UI x.y.z"
git push origin release/x.y.z vx.y.z # the tag triggers the Pages deploy
Preview the production build locally:
pnpm build-storybook && pnpm export-storybook && pnpm build
pnpm start # serves out/ on http://localhost:3000
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
This project is licensed under the MIT License.
Made with ā¤ļø by Crenspire Technologies
Every appearance and removal our crawl has seen in the registry index.