IN-HOUSE PROJECT
Gathered
A QR-based photo sharing platform that collects every guest's photos from an event into one private gallery.
Wedding and event photos end up scattered across dozens of phones, group chats and social feeds. Organisers spend weeks chasing them and still lose most of the night.
A complete event photo pipeline: event creation, QR generation, mobile guest upload, live gallery, ZIP export and an admin dashboard — built and deployed end to end.
Key points
- Guests scan a QR code and upload straight from their phone — no app, no account, no group chat
- Organisers watch the gallery fill in real time and take everything home as one full-resolution ZIP
- Photo metadata including GPS is stripped on arrival, and galleries are reachable only with the event code
Problem
Wedding and event photos end up scattered across dozens of phones, group chats and social feeds. Organisers spend weeks chasing them and still lose most of the night.
Approach
One QR code on the table replaces the entire onboarding problem. Guests scan, type a name, and upload — that's it. Uploads run in the background with live progress while the shared gallery fills in real time, so guests see the night building as it happens.
Behind it, every upload is normalised server-side: orientation is corrected, EXIF metadata including GPS coordinates and device info is stripped before storage, and video metadata is removed without re-encoding. Originals are preserved byte-for-byte using lossless tooling, so the organiser's ZIP is genuinely full quality.
Media is served through HMAC-signed expiring URLs. Nothing is publicly listed and galleries open only with the event code.
Result
A complete event photo pipeline: event creation, QR generation, mobile guest upload, live gallery, ZIP export and an admin dashboard — built and deployed end to end.
Technology
React 19
Tailwind CSS
FastAPI
MongoDB
JWT
bcrypt
FFmpeg
Pillow