Photo Gallery

Members can upload multiple photos with per-plan storage limits and privacy controls.

Features

  • Upload multiple images at once
  • Per-plan photo limits (3 free, 10 Silver, 25 Gold, 50 Platinum)
  • Publish/hide individual photos
  • Hidden photos show a blur overlay on member profiles
  • Delete photos at any time

File Storage

Photos are stored in public/uploads/gallery/. Replace the upload handler in src/lib/upload.ts to use cloud storage (S3, R2, etc.).

API Endpoints

GET    /api/gallery              # List my gallery images
POST   /api/gallery              # Upload new image(s)
PUT    /api/gallery/[id]         # Toggle publish/hide
DELETE /api/gallery/[id]         # Delete image