Gallery 30 - Drag-to-explore canvasPro

An oversized canvas of scattered photos inside a clipped frame that you pan by dragging, with momentum, edge constraints and a recenter button.

About Gallery 30

An oversized canvas of scattered photos inside a clipped frame that you pan by dragging, with momentum, edge constraints and a recenter button.

Gallery 30 is a pro gallery block for React, built on shadcn/ui and Tailwind CSS with motion animations that respect reduced-motion settings. It ships as 139 lines of TypeScript you own: every piece of copy is a prop with a sensible default, so you can drop it in and replace the content without touching the layout.

  • drag
  • canvas
  • pan
  • explore
  • playful

Installation

  1. Add the Chocolate UI registry to your components.json (see the installation guide).
  2. Run the shadcn CLI:
npx shadcn@latest add @chocolate/gallery-30

Dependencies installed automatically: lucide-react, motion.

Uses: button, motion-presets, reveal, utils.

Usage

import Gallery30 from "@/components/blocks/gallery-30"

export default function Page() {
  return <Gallery30 />
}

FAQ