About the Project

This project was inspired by the real operational challenges faced by Film2Future, a Los Angeles–based nonprofit supporting young filmmakers. As their community of students and alumni has grown, their internal systems have not kept pace, leading to fragmented data, manual reporting, and difficulty maintaining long-term connections with participants.

The goal was to design and build a centralized platform where participants can own and update their story, and staff can access reliable, structured data for outreach and impact reporting.

What I Built

Participants (students and alumni):

  • Create and update profiles
  • Track milestones (internships, jobs, projects)
  • Explore a directory of peers, including a map-based view

Staff:

  • View participant data through a centralized dashboard
  • Manage surveys for longitudinal tracking
  • Access structured data for reporting and analysis

The platform acts as a system of record, replacing fragmented spreadsheets and disconnected workflows.

How I Built It

  • Frontend: React, Vite, TypeScript
  • Styling: Tailwind CSS
  • Backend: Node.js (TypeScript)
  • Database: MongoDB

The project is structured with a clear separation between frontend, API, and database layers. MongoDB was chosen for its flexible schema, which supports evolving data like participant profiles and survey responses.

I also implemented seed data so the app behaves like a real product during demos, making testing and iteration faster.

What I Learned

  • Designing for real workflows, not just ideal user flows
  • Building scalable and flexible data models
  • Understanding how UX decisions impact usability
  • Creating tools that reduce manual operational work

It also strengthened my full-stack development skills, especially connecting frontend interactions to backend systems in a clean, maintainable way.

Challenges

One of the biggest challenges was balancing flexibility with structure:

  • Data like profiles and surveys need to evolve
  • But still must be structured enough for reporting

I also had to think through real-world usage:

  • How staff actually generate reports
  • How often participants update their data
  • How to design something intuitive enough to sustain itself

Reflection

At its core, this project is about people.

Behind every data point is someone’s story. This portal helps ensure those stories don’t get lost as the community grows, while giving Film2Future the tools to better support participants over time.

Share this project:

Updates