Back to components
ComponentCardFree

Distorted Photo Card React component

A photo card with a liquid WebGL lens that follows the pointer: the image swells under it, ripples outward, smears and splits into RGB when you move fast, with a hairline ring tracking the lens, lazy WebGL setup and a plain-image fallback.

About the Distorted Photo Card component

Distorted Photo Card puts a liquid lens under the pointer. The photo swells where you point, soft rings ripple out from it, and moving quickly smears the image and splits it into red, green and blue for a moment before it settles. A thin ring tracks the lens so it's clear what's happening.

It's drawn with a small WebGL shader, set up only when someone first points at the card, so a page full of them stays light. Where WebGL isn't available, or the image can't be used, visitors simply see the photo.

When to use it

Use it for portfolio pieces, editorial features, album or event artwork, or any hero image you want people to play with.

It's a showpiece: keep it to a handful per page, and don't use it for images people need to read, like screenshots or text-heavy graphics.

Installation

Add the Distorted Photo Card component to your project with the shadcn CLI. It lands in components/distorted-photo-card.tsx as plain React + Tailwind CSS source you own and can edit.

Install
Copied!
npx shadcn@latest add @reactframe/distorted-photo-card

Or copy the source by hand and install its dependencies:

Install
Copied!
npm install clsx tailwind-merge

More Card components

Bouncing Card Fan
Free
Card Shuffle Stack
Free
Swinging ID Badge
Free
Pixelate Hover Card
Free
Frosted App Icons
Free
Image Box
Free