Liquid Wave

A mesmerizing fluid dynamics background with interactive mouse-driven waves and customizable colors.

Loading WebGL Simulation...

Installation

pnpm dlx rareui add LiquidWave

Usage

Usage

1

Import the component

import LiquidWave from "@/components/rareui/interactive-background/LiquidWave";
2

Use in your application

export default function App() { return ( <div style={{ width: '100%', height: '500px', position: 'relative' }}> <LiquidWave /> </div> ); }

Features

High-performance WebGL fluid dynamics with advection, diffusion, and pressure handling.

Examples

Examples

1

Custom Colors

<LiquidWave color1="#5227FF" color2="#FF9FFC" color3="#B19EEF" />
2

Custom Force and Cursor Size

<LiquidWave mouseForce={30} cursorSize={150} />
3

With Viscosity

<LiquidWave isViscous={true} viscous={50} />

Props

Props

PropTypeDefaultDescription
color1string"orange"Primary gradient color (any CSS color format)
color2string"orange"Secondary gradient color (optional)
color3string"orange"Tertiary gradient color (optional)
mouseForcenumber20Strength of mouse interaction (0-100)
cursorSizenumber100Size of the interaction cursor in pixels
isViscousbooleanfalseEnable viscous fluid behavior
viscousnumber30Viscosity strength (only when isViscous is true)
isBouncebooleanfalseEnable boundary bounce effect
dtnumber0.014Time delta for simulation step
resolutionnumber0.5Simulation resolution (0.1-1.0, higher = better quality)
iterationsPoissonnumber32Pressure solver iterations (higher = more accurate)
iterationsViscousnumber32Viscosity solver iterations
BFECCbooleantrueUse BFECC advection for better stability
classNamestring""Additional CSS classes for the canvas