Skip to content
Tate Clothier

02

Sigma Nu Rush & Member Portal

Problem
Rush ran on spreadsheets, group chats and a legacy site. Attendance, applicant tracking and chapter information lived in five places and turned over with every officer.
My role
Designed and built the frontend and backend, migrated the legacy site's content, and now run it as the chapter's Chief Technician Officer.
Stack
React · TypeScript · Vite · Python · FastAPI · Vercel
Outcome
In production since 2025 with 1,000+ active users across rushees, brothers, alumni and parents; the legacy site was retired.
Sigma Nu ASU portal home: the rush page hub with chapter library, newsletters, apparel, registration and brother directory.
01

Problem

Sigma Nu at ASU runs a multi-week rush every semester. Before this, who showed up to which event was a clipboard, applicant status was a shared spreadsheet, and chapter history, officer lists, FAQs and event calendars were scattered across a legacy website nobody could edit.

Every spring the officers turn over, so anything that depends on one person knowing where the spreadsheet lives breaks within a year.

02

What I built

The platform does two jobs. For rush, prospective members register, get a profile and move through the process while the rush committee tracks them; attendance at events is checked in with geofencing, so a sign-in only counts if you are actually there; and an admin dashboard shows the committee who is engaged and where the funnel leaks.

For the chapter, it is the portal: the information library carried over from the legacy site (LEAD program, creed, history, officers), newsletters and events, the brotherhood roster, apparel orders for pickup, alumni and parent hubs, and a news archive. The old site was retired once everything lived here.

React + TypeScript SPA (Vite) on Vercel
Rush flows, portal and admin dashboard
Python FastAPI backend
Registration, attendance, applicant state, content and order endpoints
Geofenced check-in
Browser geolocation validated server-side against each event's coordinates and radius
Role-based views
Rushee, brother, rush committee and admin see different surfaces of the same app
Content migration
Every legacy page mapped into the new information architecture: About, Recruitment, Philanthropy, Parents & Alumni
03

Technical decisions

  1. 01

    Geofence attendance instead of trusting a sign-in link.

    Rush attendance drives bid decisions, so a link anyone can forward is worthless. A check-in only counts if the device's location is inside the event's radius, validated on the server, which made attendance data the committee could rely on.

    Trade-offLocation permission prompts add friction on first use.

  2. 02

    Build for operators who leave every year.

    Officers turn over annually, so every recurring task — opening a rush cycle, adding an event, publishing a newsletter, updating officers — is a form in the admin dashboard, not a code change or a spreadsheet someone has to find.

  3. 03

    Replace the legacy site completely rather than link to it.

    Two homes means stale information in one of them. Mapping every legacy page into the new structure was tedious, but it means there is one place for a parent, an alum or a rushee to look.

  4. 04

    Give the rush committee analytics, not just a list.

    Attendance by event and where applicants drop off is what the committee needs to decide who to follow up with, which is the point of collecting the data.

04

Outcome

  • 1,000+ active users across prospective members, brothers, alumni and parents.
  • Rush attendance, applicant tracking and chapter communications run through the platform; the legacy website was retired.
  • Elected Chief Technician Officer of the chapter in 2026, so I now own the roadmap as well as the code.
05

Stack

TypeScript
Frontend types shared across rushee, brother and admin views
Python
Backend language
React
SPA for rush flows, portal and admin dashboard
Vite
Build tooling and dev server
FastAPI
Registration, attendance, applicant state, content and order endpoints
REST API design
Resource-oriented endpoints consumed by the SPA
Vercel
Static hosting for the SPA