Emmanuel Hernandez
One unedited take on the iPhone 17 Pro simulator: the events feed, then tapping + to start a new event.
All work

04 Jan → May 2026

DIDUC

A shared photo album app for events. You create an event, share a code, and everyone who joins can upload photos that live in one place.

Built as a class project for UCLA CS 35L by five of us on the code and a designer working in Figma. I wrote the largest share of the backend.

Role
Full-stack engineer
Team
5 engineers and a designer
Class
UCLA CS 35L, Winter 2026
Stack
React Native, Expo, TypeScript, Express, MongoDB, Firebase

Screens

Captured from an iPhone 17 Pro simulator on the demo branch.

  1. 01

    Events feed

    Your events in one place. Search, browse, and see who's attending at a glance.

    Events feed
  2. 02

    Event detail

    Every photo, every member, and every moment from the event all in one screen.

    Event detail
  3. 03

    Create event

    Name it, describe it, drop a pin, pick a date. Share the join code and you're done.

    Create event
  4. 04

    Profile

    Your gallery across every event you've been part of.

    Profile
  5. 05

    Notifications

    Event invites and updates land here.

    Notifications
  6. 06

    Settings

    Edit profile, log out, or delete your account.

    Settings

What it does

Event management
Create events with name, description, location, and date. Share a generated join code with friends.
Shared photo gallery
Everyone at the event can upload photos. Each one is attributed to the person who took it.
Join via code
No invite links or permissions. Share the code, enter it, you're in the event.
Personal gallery
Your profile aggregates every photo you've uploaded across all your events.

What I built

  1. 01Wrote four of the ten event API routes in Express and MongoDB.
  2. 02Built the Mongoose models for users, events, and photos, and extended them as features landed, like event cover photos.
  3. 03Contributed shared React Native components (cards, forms, layout) so screens stayed visually consistent across the team.
  4. 04Built the Firebase Storage layer the event routes use to upload photos and delete them.