Photo Contact Sheet
Free Gallery React component — PhotoContactSheetCard. MIT licensed, copy-paste ready for Next.js and Tailwind CSS.
Film contact sheet with a 2×2 numbered frame grid and roll label header. Photographer portfolio vibes, straight from the darkroom.
Preview
Contact sheet — Roll 12A
01
03
04
02Setup
How to use
Free for personal and commercial use. No UI attribution required. Include the MIT copyright notice when copying component source into your project. Read the MIT license.
- 1
Run in your terminal:
$npm install clsx tailwind-merge lucide-react - 2
Copy
lib/cn.tsbelow. Skip if you already havecn(). - 3
Copy the code below and create
components/gallery/photo-contact-sheet-card.tsxin your project. - 4
Import and render:
Exampleimport { PhotoContactSheetCard } from "@/components/gallery/photo-contact-sheet-card";
lib/cn.ts
import { cn } from '@/lib/cn';// Full source is available in the repository checkout.
components/gallery/photo-contact-sheet-card.tsx
// Full source: components/components/gallery/photo-contact-sheet-card.tsx// The Cloudflare worker does not expose the source tree at request time.