New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

liquid-glass-react

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

liquid-glass-react

Apple's Liquid Glass effect for React

latest
npmnpm
Version
1.1.1
Version published
Weekly downloads
15K
-6.12%
Maintainers
1
Weekly downloads
 
Created
Source

Liquid Glass React

Apple's Liquid Glass effect for React.

Card ExampleButton Example

Video

See it in action

Demo

See it in action but touch it

Features

  • Proper edgy bending and refraction
  • Multiple refraction modes
  • Configurable frosty level
  • Supports arbitrary child elements
  • Configurable paddings
  • Correct hover and click effects
  • Edges and highlights take on the underlying light like Apple's does
  • Configurable chromatic aberration
  • Configurable elasticity, to mimic Apple's "liquid" feel

⚠️ NOTE: Safari and Firefox only partially support the effect (displacement will not be visible)

Usage

Installation

npm install liquid-glass-react

Basic Usage

import LiquidGlass from 'liquid-glass-react'

function App() {
  return (
    <LiquidGlass>
      <div className="p-6">
        <h2>Your content here</h2>
        <p>This will have the liquid glass effect</p>
      </div>
    </LiquidGlass>
  )
}

Button Example

<LiquidGlass
  displacementScale={64}
  blurAmount={0.1}
  saturation={130}
  aberrationIntensity={2}
  elasticity={0.35}
  cornerRadius={100}
  padding="8px 16px"
  onClick={() => console.log('Button clicked!')}
>
  <span className="text-white font-medium">Click Me</span>
</LiquidGlass>

Mouse Container Example

When you want the glass effect to respond to mouse movement over a larger area (like a parent container), use the mouseContainer prop:

function App() {
  const containerRef = useRef<HTMLDivElement>(null)

  return (
    <div ref={containerRef} className="w-full h-screen bg-image">
      <LiquidGlass
        mouseContainer={containerRef}
        elasticity={0.3}
        style={{ position: 'fixed', top: '50%', left: '50%' }}
      >
        <div className="p-6">
          <h2>Glass responds to mouse anywhere in the container</h2>
        </div>
      </LiquidGlass>
    </div>
  )
}

Props

PropTypeDefaultDescription
childrenReact.ReactNode-The content to render inside the glass container
displacementScalenumber70Controls the intensity of the displacement effect
blurAmountnumber0.0625Controls the blur/frosting level
saturationnumber140Controls color saturation of the glass effect
aberrationIntensitynumber2Controls chromatic aberration intensity
elasticitynumber0.15Controls the "liquid" elastic feel (0 = rigid, higher = more elastic)
cornerRadiusnumber999Border radius in pixels
classNamestring""Additional CSS classes
paddingstring-CSS padding value
styleReact.CSSProperties-Additional inline styles
overLightbooleanfalseWhether the glass is over a light background
onClick() => void-Click handler
mouseContainerReact.RefObject<HTMLElement | null> | nullnullContainer element to track mouse movement on (defaults to the glass component itself)
mode"standard" | "polar" | "prominent" | "shader""standard"Refraction mode for different visual effects. shader is the most accurate but not the most stable.
globalMousePos{ x: number; y: number }-Global mouse position coordinates for manual control
mouseOffset{ x: number; y: number }-Mouse position offset for fine-tuning positioning

Keywords

react

FAQs

Package last updated on 11 Jun 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts