27e2f196ebc5c3f534c53957fb9d58e128db3bc8
Co-authored-by: Cursor <cursoragent@cursor.com>
Vellum
Event photo collection for a wedding day — and for any gathering that needs the same guest-upload, host-moderate, public-gallery loop.
Guests open a shareable event link, optionally add a name, email, and note, and upload photos. Event people approve what appears in the gallery. Originals stay full quality in S3-compatible object storage.
Repository
apps/
web/ Public site, guest pages, dashboard, platform admin
worker/ image variants, EXIF/GPS strip, HEIC conversion
packages/
contracts/ shared Zod payloads
database/ Drizzle schema, migrations, seed
storage/ S3/Garage client, object keys, presign
email/ Mailpit (dev) / Resend (prod) for auth and guest mail
Quick start
Requirements: Bun 1.3+ and Docker.
cp .env.example .env
bun install
bun run docker:up
bun run db:migrate
bun run auth:seed
bun run db:seed
bun run dev
The app runs at http://localhost:3000. Garage S3 is at
http://localhost:3900. Mailpit is at http://localhost:8027.
- Public:
/(listed events) and/e/demo - Dashboard:
/dashboard - Platform:
/admin
Example accounts (password host, admin password admin):
admin@example.com— platform super-adminhost@example.com/partner@example.com— event ownersmanager@example.com— event manager
Description
Shared event albums for guest uploads, host moderation, and original-quality galleries.
5.1 MiB
Languages
TypeScript
98.5%
CSS
1.2%
Dockerfile
0.3%