
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.






01 / 06 · Events feed
01
Events feed
Your events in one place. Search, browse, and see who's attending at a glance.

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

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

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

05
Notifications
Event invites and updates land here.

06
Settings
Edit profile, log out, or delete your account.

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