Kinetic Grid Warp

<KineticGridWarp>CSS Modules

Perspective grid warped by waves and pointer gravity.

InstallationColoxo CLI
npx coloxo add kinetic-grid-warp
ES Module ImportPlayground / npm package
import { KineticGridWarp } from '@coloxo/ui/visuals';

1. Live preview

This is the real component, not a recording. Move the pointer over it, then adjust the renderer settings.

Fragment shader
<KineticGridWarp quality="low" />

2. Usage

Perspective grid warped by waves and pointer gravity. npx coloxo add kinetic-grid-warp copies this effect in a Tailwind project or a Coloxo CSS project, and adds @coloxo/ui to package.json. You can also import it from @coloxo/ui/visuals.

3. Performance notes

Effects render on demand and dispose their GPU context when unmounted.

  • Every effect pauses when scrolled out of view or when the tab is hidden, so an idle page costs nothing.
  • quality caps the device pixel ratio. Keep it at low when several effects share one viewport.
  • With respectReducedMotion enabled, the effect renders a single static frame instead of animating.
  • The output is a decorative canvas hidden from assistive technology. Never place essential content only inside the effect.

4. Props

NameTypeDefaultDescription
gridSizenumber14Grid cell count across the frame, 4 to 40.
warpStrengthnumber1Wave distortion strength, 0 to 3.
speednumber0.5Scroll speed, 0 to 2.
lineWidthnumber0.04Line thickness, 0.005 to 0.2.
perspectivenumber1Perspective squeeze toward the horizon, 0.2 to 2.
lineColorstringColoxo blueLine colour.
accentColorstringcyanAccent and pointer glow colour.
pausedbooleanfalseRender a single static frame instead of animating.
respectReducedMotionbooleantrueFreeze to a static frame when prefers-reduced-motion is set.
quality"low" | "medium" | "high"mediumCaps the renderer pixel ratio. Use low for grids of many effects.
className / stylestring / CSSProperties—Applied to the container element.