Kinetic UI
Back to Introduction
SVG Animations

Gooey Cursor

A liquid blob cursor effect powered by SVG filters and Framer Motion.

Quick Actions
CLI Installation
npx kinetic-ui-cli@latest add gooey-cursor
Gooey Cursor

Gooey Cursor

Move your mouse around this box to see the SVG filter in action.

Installation

npx kinetic-ui-cli@latest add gooey-cursor

Anatomy

This effect relies on a fundamental SVG filter technique:

  1. feGaussianBlur: First, we blur multiple circular divs so their edges overlap.
  2. feColorMatrix: Then, we sharply increase the alpha contrast to solidify the blurred intersections into a gooey liquid bridge.

We use Framer Motion's useSpring with varying levels of stiffness and damping for each blob to create a natural delayed trailing effect.

Usage Guide

1. Import the Component

Import the component into your React or Next.js page:

import { GooeyCursor } from "@/components/creative/gooey-cursor";

2. Implementation Example

Render the component and customize its behavior by passing props:

import { GooeyCursor } from "@/components/creative/gooey-cursor";

export default function Example() {
  return (
    <div className="w-full flex items-center justify-center p-8">
      <GooeyCursor
        containerRef{/* value */}
      />
    </div>
  );
}
Performance Notes
  • Uses CSS hardware acceleration via GPU transform-binds.
  • Damped interpolation minimizes paint-redraw flashes.
  • Tree-shakable import: only compiles elements requested.
Accessibility Notes
  • Full keyboard focus-ring navigation support (`Tab`/`Shift+Tab`).
  • ARIA roles mapped correctly for assistive screen readers.
  • Respects `prefers-reduced-motion` system toggles.