Skip to content
Back to work

// case_study

Momento

A real-time event photo gallery. The question I wanted to answer: how do you get every guest's photos to the host without asking anyone to install anything?

Momento

problem

Guests at weddings and events take hundreds of photos that never reach the host.

product bet

A QR code that opens a gallery is easier than getting everyone to install an app.

Key decisions

  • QR join over app install

    Guests at events will not download an app mid-reception. A QR code that opens a web gallery removes the biggest drop-off.

  • Firebase for real-time sync

    Hosts needed uploads to show up instantly. Firebase gave me real-time listeners without building custom WebSocket infrastructure.

  • Host/guest roles from day one

    Shared event spaces need moderation. I set up host and guest permissions early so the data model did not need a rewrite later.

  • PWA instead of native

    An installable PWA covers guest phones and host dashboards without maintaining separate iOS and Android apps. Good enough for fast iteration.

outcome

Live event gallery with real-time sync, host/guest roles, and PWA access. Shipped for real events with a public demo.

  • QR code access so guests can join in seconds, no app store needed
  • Live gallery updates with real-time guest uploads
  • Host/guest roles with authentication and moderation
  • Mobile-first responsive UI with Tailwind CSS
  • Installable PWA that works across devices

what i'd do next

  • Batch upload for guests on slow connections
  • Host moderation queue for uploaded photos
  • Basic event analytics: uploads per hour, active guests
ReactTypeScriptFirebaseTailwind CSSVercelPWA