Inspiration

This project was inspired by conversations with NAMI Yolo County Executive Director, Jen Boschee-Danzer, where we learned firsthand about the challenges of organizing and scaling community mental health support with limited administrative resources. Despite NAMI's deep commitment to empowering individuals and families affected by mental illness, they face major logistical barriers—especially in managing, training, and deploying their dedicated volunteers. Currently managing 30 volunteers, they aim to expand—but without a centralized system, it’s difficult to efficiently track and organize volunteer data, making growth harder than it needs to be.

We believed that a volunteer management system would be both an incredibly versatile tool and something that fit our skill set. In addition, Jen was able to verablize an incredible array of areas in which their current system to improve. As a team looking for a problem to solve, this left us a lot of creative choices and outlets we could approach.

This project is ultimately about making a usable tool while also not requiring a massive learning curve. Tools are meant to speed up the tedious nature of life, not increase it.

What it does

This system centralizes and streamlines NAMI's volunteer management by consolidating data previously scattered across multiple Excel Sheets into one secure, organized platform.

It uses Auth0 for user authentication, supporting two distinct roles: coordinators and volunteers. Coordinators have administrative access to manage volunteer information, training statuses, and event logs. Volunteers, in turn, have a personalized portal where they can register, view upcoming events, and track their service hours.

To address a key pain point—the lack of access to volunteer training records—the platform requires volunteers to upload their training certificates directly through the portal. These files are automatically sent to the coordinator’s dashboard, where training progress can be monitored and verified with ease.

How we built it

Architecture

  • Frontend: React + Typescript
  • Backend: Golang with ConnectRPC
  • Database: Postgress
  • Authentication: Auth0

Core Features

  • General
    • Landing Page
    • Login Page with secure role-based access (Coordinator)
      • Volunteer Portal
    • Log volunteer hours
    • Sign up for events (recurring & one-off)
    • View “My Events” dashboard
    • Register as a volunteer and upload training certificates
  • Coordinator Dashboard
    • Edit volunteer details: * Name, contact info
    • Assign and track certifications: * Training start & certified dates * Filter volunteers by certification
  • Event Management:
    • View all events
    • Create, edit, and delete events (recurring or one-off)
    • Manage volunteer sign-ups per event
  • Certification Management:
    • Add/edit list of certification types
    • Track volunteer training progress
  • Participation Tracking
    • Monitor volunteer engagement and training progress
    • Easily export or access key volunteer data

Challenges we ran into

Both of the developers weren’t comfortable with the frontend framework we decided on. This caused us to heavily rely on templates to manage the UI. In addition, we used Auth0 to manage all of our api authentication, and while a safe and solid practice, this was a massive time sink and quite difficult.

Solution: Ultimately we were able to build out of the backend with a solid database and authentication but it took a ton of time. We decided to cut some corners in the frontend to devote more resources (namely time) to backend development.

Accomplishments that we're proud of

The authentication system is well integrated and adds an extra level of security we wouldn’t have otherwise. All of us were extremely flexible and pivoted numerous times even when developing with tools we had no experience with.

What we learned

Templates make most frontend frameworks look super easy, but frontend still requires a lot of work and skill. In particular, CSS was a challenge and we struggled heavily with translating Figma designs to a usable interface.

What's next for NAMI Yolo County

We’d love some more time to hook up the database. It is incredibly easy to overlook how powerful of a tool it adds to our project and how much time we put into it. Sadly this resulted in us rushing through some of the most crucial and powerful parts of what we wanted to do. Being able to move forward and show what a scalable tool for a growing organization Yolo VMS could be, would be fitting and rewarding in itself.

Built With

Share this project:

Updates