The idea
Your moment is in there.
Finishing a race is personal. Finding the photo should be, too. Fotto brings event photography into a single experience: choose an event, find your frame, preview it, and buy the images you want.
On the other side is a photographer who needs to upload a large gallery, protect their work, and deliver the purchase without manually handling every message.
The product
Two sides. One connected experience.
The buyer journey supports event discovery, bib and selfie search, watermarked previews, checkout, and a purchased-photo library. Photographer workflows cover onboarding, uploads, galleries, shop presentation, and payout visibility.
The engineering goes beyond the interface. Image processing, search, storage, access control, and delivery have to agree about which image belongs to which purchase. A successful payment must lead to the right download, for the right buyer.
The care
A fast interface needs a dependable system.
The frontend is built with Next.js and TypeScript. Supabase supports the application’s data and access controls, while AWS handles storage and parts of the processing and delivery infrastructure. Python supports image-search tooling.
Public previews and purchased originals have different jobs. That boundary carries through the storage, delivery, and authorization design. This case study shows the public product; private galleries, orders, and photographer operations are intentionally excluded.
