app-overview.mp4
![Deploy with Vercel](https://camo.githubusercontent.com/0d115430c1db17132964386282927e5e313543c7d868fc06bc9a7c65d7ec974e/68747470733a2f2f76657263656c2e636f6d2f627574746f6e)
https://photos.sambecker.com
- Photo upload with EXIF extraction
- Photo tagging
- Infinite scroll
- Built-in auth
- Light/dark mode
- Automatic OG image generation
![OG Image Preview](https://github.com/readme/og-image-share.png)
- Click Deploy
- Add required storage (Vercel Postgres + Vercel Blob)
- Add environment variables
NEXT_PUBLIC_SITE_TITLE
(e.g., My Photos)
NEXT_PUBLIC_SITE_DOMAIN
(e.g., photos.domain.com)
NEXT_PUBLIC_SITE_DESCRIPTION
(optional—mainly used for OG meta)
- Generate auth secret
- Add to environment variables:
- Add admin user to environment variables:
ADMIN_EMAIL
ADMIN_PASSWORD
3. Upload your first photo
- Visit
/admin
- Click "Choose File"
- Title your photo
- Click "Create"
- Clone code
- Install dependencies
pnpm i
- Run
vc dev
to utilize Vercel-stored environment variables
5. Add Analytics (optional)
- Open project on Vercel
- Click "Analytics" tab
- Follow "Enable Web Analytics" instructions (
@vercel/analytics
is already part of your project)
6. Optional configuration
- Set
NEXT_PUBLIC_HIDE_REPO_LINK = 1
to remove footer link to repo
- Set
NEXT_PUBLIC_PRO_MODE = 1
to enable higher quality image storage