PRO

Shader Grid Gallery

An infinite, draggable grid of framed images rendered entirely in one fragment shader. A single full-screen plane tiles the projects into cells with borders, captions, and a lens-warped vignette; dragging pans the field with inertia and eases in a slight zoom, the cell under the pointer lifts, and a click that does not drag selects that project. Three.js with on-the-fly image and text atlases.

Component
Install
npx shadcn@latest add https://ui.aryank.space/r/shader-grid-gallery.json

Installs from ui.aryank.space. To add it by hand, copy the files in Usage below, or register the @compronents namespace via the docs.

Files

API
PropTypeDefaultDescription
projectsShaderGridProject[]Twenty-five BLANK projectsTitle, year, image, and optional href tiled across the grid.
onSelect(project) => voidundefinedCalled when a cell is clicked without dragging.
Customize
projectstext

Title, year, image, and optional link for each cell.

onSelecttext

Callback fired with the project of a clicked (non-dragged) cell.

Dependencies
three