This component no longer exists. It was in PaceUI GSAP’s manifest when we first indexed it and is not there now — the registry served its inventory on 2026-08-06 and this item was not on it. The install command below will fail. It is kept here because a tutorial somewhere still tells people to run it.
Liquid Glass
paceui-gsap/liquid-glassRemovedComponent
A smooth glass effect with subtle blur, ideal for UI highlights and overlays.
Live preview
live · rendered by the registry
Rendered by PaceUI GSAP on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://gsap.paceui.com/r/liquid-glass.jsonSource
1"use client";23import { CSSProperties, useRef } from "react";45import { useGSAP } from "@gsap/react";6import gsap from "gsap";78import { cn } from "@/lib/utils";910type LiquidGlassProps = {11 width?: number;12 height?: number;13 borderRadius?: number;14 tintOpacity?: number;15 blur?: number;16};1718export const LiquidGlass = (props: LiquidGlassProps) => {19 const { width = 120, height = 120, borderRadius = 12, tintOpacity = 0.1, blur = 2 } = props;2021 const glassRef = useRef<HTMLDivElement>(null);2223 useGSAP(() => {24 const glass = glassRef.current;25 const parent = glass?.parentElement;2627 if (!glass || !parent) return;2829 const mouseMove = (e: MouseEvent) => {30 if (!glassRef.current || !glassRef.current?.parentElement) return;3132 const parentRect = parent.getBoundingClientRect();3334 const posX = e.clientX - parentRect.left - width / 2;35 const posY = e.clientY - parentRect.top - height / 2;3637 gsap.to(glassRef.current, {38 duration: 0.6,39 left: posX,40 top: posY,41 ease: "power2.out",42 });43 };4445 if (!glassRef.current) return;4647 if (parent) {48 window.addEventListener("mousemove", mouseMove);49 }5051 return () => {52 window?.removeEventListener("mousemove", mouseMove);53 };54 }, []);5556 return (57 <>58 <svg xmlns="http://www.w3.org/2000/svg" width="0" height="0" className="absolute overflow-hidden">59 <defs>60 <filter id="glass-distortion" x="0%" y="0%" width="100%" height="100%">61 <feTurbulence62 type="fractalNoise"63 baseFrequency="0.008 0.008"64 numOctaves="2"65 seed="92"66 result="noise"></feTurbulence>67 <feGaussianBlur in="noise" stdDeviation="2" result="blurred"></feGaussianBlur>68 <feDisplacementMap69 in="SourceGraphic"70 in2="blurred"71 scale="80"72 xChannelSelector="R"73 yChannelSelector="G"></feDisplacementMap>74 </filter>75 </defs>76 </svg>77 <div78 ref={glassRef}79 className={cn(80// … truncated
What it pulls in
npm packages
