Web application

StudySpot

Campus study-space finder with crowdsourced live occupancy and three-tap room booking

StudySpot

What I built

  • Built a campus study-space finder on Next.js and Supabase: magic-link auth, six tables under RLS, three-tap booking
  • Replaced a hardcoded "30% full" occupancy fallback with a recency-weighted average and an explicit unknown state

How the numbers were measured

Built a campus study-space finder on Next.js and Supabase: magic-link auth, six tables under RLS, three-tap booking
Counted from the repository 2026-09-09: 10 page routes under src/app, six tables (profiles, spots, rooms, reports, bookings, saved_spots) in supabase/migrations/0001_schema.sql, each with RLS. Live at studyspot.mayank-goel.com. All 8 commits authored by me, though the course project itself was Team User First (Group 8). The claim is about the code in this repository, not the team's other work.

Built with

Next.jsTypeScriptSupabasePostgreSQLApp RouterReact Server ComponentsServer ActionsTailwindZodDrizzle OrmRow Level SecurityMagic Link AuthPwaSupabase RealtimeService WorkerRate LimitingVercel

Why this stack

Built for CS 3724 (HCI), Spring 2026, but the repository is not a prototype. Next.js 16 App Router with Server Components by default, six Postgres tables with row-level security on every one, magic-link auth, and an installable PWA. All 8 commits are mine.