Ghost Mammoth Pickleball

Client

Ghost Mammoth Pickleball

Real-time event and court management for pickleball communities

OVERVIEW

Summary

A production membership and event management platform for a pickleball community, combining event registration, skill-based player queues, real-time court assignments, group participation, subscription billing, and administrative event operations.

SaaSEvent ManagementReal-time SystemsMembership PlatformSubscription BillingCollaborative Development

EVIDENCE

Metrics

Signals from building and operating the system—not vanity counters.

Active Users

~60

Production users actively using the platform for pickleball events and membership workflows.

Development lifecycle

9+ months

Development shown from the initial application work in August 2025 through continued production development and architectural improvements in May 2026.

Pull request evolution

130+ PRs

The repository progressed through more than 130 pull requests covering the original product, production fixes, membership workflows, accessibility, realtime behavior, queue logic, refactoring, and group play.

Core operational systems

4

The platform combines event management, realtime queue and court operations, membership/subscription management, and administrative workflows within one application.

Production maturity

Multi-stage

The product progressed from MVP implementation through production usage, bug-driven refinement, accessibility improvements, architectural refactoring, and expanded group-play workflows.

STORY

Engineering story

How the platform was scoped, built, and refined.

Problem

A real-time domain system that continuously determines who plays next, how groups remain together, which players fit available courts, how winners rotate, and how those decisions remain synchronized between administrators and participants.

Pickleball events require more coordination than simply allowing players to register. Organizers need to manage participants with different skill levels, maintain a fair player queue, assign players to available courts, communicate changes in real time, and manage membership access without forcing staff to manually coordinate every transition during an active event.

Solution

We built Ghost Mammoth as a production membership and event-management platform centered around the live event workflow. Players can join events, provide their skill level, enter the playing queue, and receive court assignments and updates as an event progresses. Administrators can create and manage events, configure courts, oversee player rotation, generate matchups, and end sessions while membership access is handled through subscription billing.

System design

Architecture

The application uses Next.js and TypeScript for the application layer with Supabase providing PostgreSQL persistence, authentication, and realtime infrastructure. Supabase Realtime synchronizes event and court state between participants and administrators, while Stripe handles subscription checkout and membership billing. Row Level Security provides database-level access controls alongside application authorization.

Challenges

The core challenge was coordinating state that changes continuously during a live event. Queue position, court availability, player assignments, event state, and administrative actions can affect multiple users simultaneously. The system therefore had to keep participant and administrator views synchronized while maintaining predictable queue and assignment behavior.

Lessons learned

Real-time applications require thinking differently about state than conventional request-and-response CRUD systems. Changes made by one participant or administrator can immediately affect several other users, making synchronization, authorization, failure handling, and clearly defined ownership of business logic especially important. The project also reinforced the value of dividing complex domain logic into reusable modules and shared contracts as the system grows.

Future improvements

Continued development can expand group registration workflows, improve captain and team-management capabilities, refine event rotation and matchmaking behavior, strengthen administrative analytics, and continue improving the participant experience during live events.

Product

Features

What the product or platform delivers.

  • Event creation and management
  • Player event registration
  • Skill-level management
  • Real-time player queue
  • Court assignments
  • Player notifications
  • Court-count configuration
  • Player rotation
  • Automatic matchup workflows
  • Session management
  • Group registration
  • Membership subscriptions
  • Stripe Checkout
  • Subscription access control
  • Realtime synchronization
  • Administrative event controls
  • Row Level Security
  • Responsive participant experience
Ownership

Responsibilities

What I personally designed, built, or owned.

  • Full-stack development
  • Collaborative architecture
  • Database integration
  • Frontend development
  • Backend development
  • Realtime integration
  • Authentication
  • Authorization
  • Stripe integration
  • Subscription workflows
  • Event-management workflows
  • Administrative UX
  • Testing and debugging
  • Production refinement

EVOLUTION

How it evolved

Major milestones across the project lifecycle.

  1. 2025

    August–October 2025

    MVP and data integration

    Initial Next.js application established Membership experience prototyped Supabase integration introduced User and administrator experiences separated Stripe membership logic integrated Event-management workflows moved from mock data toward persisted application state The project began as an MVP around membership and pickleball event operations. Early development established the application structure, Supabase-backed data, authentication, separate participant and administrator experiences, and the foundations for Stripe membership billing.

  2. 2025

    October 2025

    Queue and court-management system

    Public events and administrative testing added Court selection and court-size controls introduced Group sizes incorporated into assignments Player names displayed on court teams Skill averaging introduced for groups Queue-ordering behavior refined Winner rotation and court assignment bugs addressed The application evolved from basic event management into a domain-specific court operations system. Queue ordering, court capacity, group sizes, player skill representation, team assignments, and winner rotation required dedicated business logic rather than conventional CRUD behavior.

  3. 2025

    November 2025–February 2026

    Production hardening and membership expansion

    Development data separated from production Account functionality expanded Membership issues addressed Authentication/session handling improved Resend introduced for email Verification workflows improved Notification functionality expanded Mobile event creation refined Accessibility improvements Sitemap/search/navigation improvements As the product matured, development shifted toward production reliability and the surrounding membership experience. Authentication, session handling, email delivery, notifications, mobile behavior, accessibility, environment separation, and account workflows were progressively strengthened.

  4. 2026

    March–April 2026

    Architecture and realtime refactoring

    Codebase-wide refactoring plan introduced Server/client boundaries tightened Queue logic extracted into reusable modules Shared types and mappers introduced Server-first membership routes implemented Shared serializers and hydration helpers created Event fetching extracted for reuse Admin realtime behavior corrected Queue edge cases and pending-state behavior refined Package/tooling audits performed Continued feature growth exposed architectural pressure in the original implementation. A structured refactor moved queue logic, serialization, data loading, and domain behavior into clearer boundaries, reduced oversized components, strengthened server-first patterns, and improved the maintainability of realtime event operations.

  5. 2026

    April–May 2026

    Advanced rotation and group play

    Players allowed to end games Two-stay/two-off rotation mode introduced Pending queue visibility improved Queue cleanup when players leave Realtime tests expanded Group-name and form-state issues addressed Group-size behavior tested Winner-stay logic made team-size aware Codebase reorganized into domain-oriented folders Later development expanded the original queue model into more sophisticated event formats. Rotation policies, winner behavior, pending players, group sizes, player departure, and realtime synchronization became configurable domain behaviors while the underlying codebase was reorganized around clearer domain boundaries.

  6. 2026

    May 2026

    Membership-connected event experience

    Event access connected to membership state Group-play behavior refined Team-size validation added Realtime behavior tested Domain-folder migration completed The latest iteration brought the event and membership sides of the platform closer together while continuing to harden group play and realtime behavior. By this point, the system had evolved substantially beyond the original MVP into a maintained production platform with reusable domain architecture.

PLATFORM

Platform capabilities

Engineering capabilities demonstrated by this project.

  • Real-time event coordination

  • Dynamic player queue management

  • Automated court assignment

  • Group-aware matchmaking

  • Live participant synchronization

  • Administrative event operations

  • Role-based access control

  • Membership and subscription management

  • Stripe-powered billing

  • Player notification workflows

  • Responsive participant experience

  • Server-first data workflows

  • Shared domain logic

  • Production event management