UNM-SR: A Student Resource App for the University of New Mexico
2021 · UNM-SR
1st Place, UNM App Contest (2020) · React Native · Expo · Firebase · Solo Developer
Overview
UNM-SR (UNM Student Resources) is a cross-platform mobile app that helps University of New Mexico students discover and connect with campus organizations. I designed, architected, and built the entire app solo — from initial concept through a working, judged product — and it won 1st place at UNM's App Contest in 2020.
The Problem
New and returning UNM students had no single, reliable place to find student organizations. Information lived across scattered department pages, printed flyers, and word of mouth, which meant students who wanted to get involved on campus often didn't know where to start, or missed organizations that would have been a great fit for them. I wanted to build something that made "finding your people" on a large campus as easy as browsing an app.
Design Process
Before writing any code, I spent time getting the concept right:
- Prototyping in Adobe XD — I mocked up the core flows (exploring organizations, viewing details, searching) to validate the UX before committing to implementation.
- Data and state modeling in Whimsical — Since the app needed to represent many organizations with varying attributes (descriptions, contact info, categories, meeting details), I mapped out a NoSQL-style object schema and the application state up front, which saved significant rework later.
- Project planning in Trello — As a solo developer working against a contest deadline, I used a Trello board to break the build into milestones and keep myself honest about scope.
Technical Architecture
The app is built with React Native and Expo, which let me target Android, iOS, and web from a single codebase — important given the short timeline and the fact that judges and students would access it on different devices.
The core screens are an explore screen, where students can browse and search UNM organizations, and a detail screen for each organization showing its full profile. Data flows from Firebase, which I chose for its real-time database and quick integration with a React Native front end.
The Hardest Problem: Backend Integration
The most technically demanding part of the project was designing the backend so that organization data could be created, updated, and queried reliably, and making sure the app's local state stayed in sync with it. A few specific challenges I had to work through:
- Schema design under uncertainty — I didn't have a fixed list of organizations or fields up front, so I had to design a NoSQL schema flexible enough to accommodate different organization types without becoming a mess of optional fields.
- Keeping client state in sync with Firebase — Naively re-fetching on every screen led to noticeable lag and redundant reads. I had to think carefully about when to fetch, when to cache, and how to avoid showing stale data to the user — an early, hands-on lesson in the tradeoffs of client-side state management that I still apply today.
- Working solo — With no team to split frontend and backend work, I had to context-switch constantly between UI implementation and data-layer design, which forced me to get disciplined about scoping each work session.
Outcome
UNM-SR won 1st place at the University of New Mexico's App Contest in 2020, standing out for tackling a real, campus-wide problem with a functional, polished mobile app — built end-to-end by one developer in a compressed timeframe.
Reflection
If I rebuilt this today, I'd add automated tests around the data layer, tighten up Firebase security rules for production use, and use more modern React Navigation patterns. But the project's biggest value to me wasn't the win itself — it was the first time I owned a product from a blank whiteboard to a working app that real people could use, and had to make every design and architecture decision myself.
Stack: React Native, Expo, Firebase, Adobe XD, Whimsical, Trello Role: Solo developer — UX design, data architecture, and full implementation