Back to Portfolio

VolleyballEngine - Tournament Management Platform

Full-stack tournament management app for sand volleyball leagues. Real-time scoring, six scheduling algorithms including Swiss pairing, Stripe payments, role-based access, and analytics dashboards. Built with Next.js, Supabase, and TypeScript.

Next.js TypeScript Supabase Stripe Tailwind CSS Cloudflare Pages
Visit Project

Overview

Built a production tournament management platform for sand volleyball leagues that handles everything from player registration through live scoring and cross-tournament analytics. Supports six different tournament formats with pluggable scheduling algorithms.

Key Features

  • Six tournament formats: Standard, Shuffle, King of the Court, Breakup & Makeup, Level-Up, and Swiss System
  • Real-time TV scoreboard and mobile scorer powered by Supabase Realtime
  • Stripe payment integration for player registration
  • iPad-optimized check-in with tap/long-press gesture handling
  • Skill-balanced team formation with multiple algorithms
  • Lifetime player statistics aggregated across all tournaments
  • Analytics dashboards with participation trends, revenue tracking, and skill distributions
  • Live HSL theme engine with named presets per tournament

Technical Highlights

  • Next.js App Router with TypeScript and Tailwind CSS
  • Supabase for PostgreSQL, auth, row-level security, and real-time subscriptions
  • Pluggable schedule engine architecture with shared interface contract
  • Swiss pairing algorithm with teammate-penalty scoring and optimization passes
  • Role-based access control (super admin, tournament director, scorekeeper, player) enforced at both UI and database levels
  • Recharts for 10+ custom chart visualizations
  • Deployed on Cloudflare Pages with edge runtime

See more of our work

Check out the rest of the projects and problems we've tackled.

View Portfolio