← Projects

GameSense: Automated Beach Volleyball Intelligence Platform

Joey Musselman · March 1, 2026

Professional beach volleyball statistics are locked behind the FIVB website with no public API. I needed a way to automatically collect, structure, and analyze match data to power a YouTube analytics channel.

Challenge

The FIVB site is a dynamic SPA with overlays, cookie banners, and tabbed interfaces that change state between data loads. Extracting box scores across 5 skill categories for both teams required navigating complex DOM states, detecting data contamination between teams, and retrying with stabilization when validation failed. The data model needed to support players, tournaments, matches, per-skill statistics, video segments, and point-by-point tracking.

My Role & Contribution

Sole Developer — Full-Stack Development & Data Engineering

Key Technologies

Next.js 16TypeScriptPostgreSQLPlaywrightPythonOpenCVRadix UI

Impact

Automated collection of professional beach volleyball statistics that were previously only available through manual data entry. The scraper handles the full FIVB tournament schedule with resilient error recovery and deduplication. The live tracker enables real-time match analysis with zone-based shot tracking for YouTube content production.

web-scrapingplaywrightsports-analyticspostgresqlnext.jsdata-engineeringautomation