Full-Stack Event Platform with Auth, Maps & PWA
Client Bio /
I built a full-stack event discovery and management platform for the open mic community in Tampa Bay, using Next.js 15, Supabase, Prisma, and AWS SES.
Stagelet is a full-stack event discovery and management platform for the open mic community in Tampa Bay. I built it as a learning project to gain hands-on experience with Supabase, modern authentication patterns, and production-grade infrastructure. It evolved into a feature-rich application with 31 API endpoints and a sophisticated event lifecycle system.

Authentication supports dual channels: cookie-based JWT sessions for web users and Bearer token validation for mobile clients. Both are handled through a shared utility with fallback logic. Middleware automatically refreshes Supabase sessions on protected routes.
The event lifecycle forms the core domain model. Events move through creation, admin approval, host claiming, 30-day confirmation cycles through JWT-embedded renewal links, pausing with reason tracking, date-specific skipping, and expiration. Supporting this required careful schema design across Event, EventSkip, EventCheckin, and VerificationToken tables.
Geographic filtering is handled through a metro system using GPS bounding boxes that power both list and map views. Map markers use custom SVG guitar-pick icons color-coded by status: green for claimed events, yellow for unclaimed, and red for paused.
Building Stagelet provided hands-on experience solving real production challenges. I implemented IP-hashed check-in deduplication, file uploads to Supabase Storage, and multi-table relational queries through Prisma. The admin approval workflow, reCAPTCHA integration, and SES email pipeline introduced real-world security and communication patterns. The project also included building a Progressive Web App with service workers and improving SEO using structured data.
A production-ready platform with user authentication, admin moderation, interactive maps, email notifications, and offline support — built end-to-end as a self-directed learning project.