prahlaad r.
← All Artifacts
ProjectVisualizationDataFeatured

NBA Match Dashboard

An interactive NBA game analysis dashboard with D3.js hexbin shot charts, force-directed assist networks, and score timelines. Built with Next.js 15, React 19, and a Python data fetcher using NBA API V3 endpoints.

View project →
🏀
Interactive NBA game analysis — shot charts, assist networks, score timelines

GitHub: prahlaadr/nba-dashboard


Why I Built This

Wanted to visualize NBA games beyond basic box scores — see shot patterns, passing networks, and momentum shifts in a single interactive view.

How It Works

Next.js 15 + D3.js frontend. Python data fetcher pulls from NBA API V3 endpoints (V2 was broken for play-by-play and advanced box scores). D3.js hexbin shot charts show shooting zones, force-directed graphs show assist networks, line charts track score differential over time. React Query for data fetching, Zustand for state.

Notable Technical Details

  • NBA API V2→V3 migration (playbyplayv3, boxscoreadvancedv3)
  • Play-by-play assist parsing from description text (not broken assistPersonId field)
  • ShotChartDetail requires season_type_all_star="Playoffs" for playoff games
  • Game ID prefix convention: 002 = regular season, 004 = playoffs