How keysarenull/family-feud-- works
This is a browser-based Family Feud game: a host configures a question, teams, and ranked answers, then runs a round by revealing answers and recording team scores and strikes. Saved presets can be loaded, saved, or deleted using browser storage, with optional shared Supabase storage when configured. The main component owns setup and game state, while gameLogic.js supplies answer sorting and winner calculation. Sampled excerpts omit some handlers and storage code, so the graph shows only their documented or visible relationships.
Main entry points: family-feud.jsx Family Feud · App.jsx App wrapper · supabase.js Supabase client · main.jsx React bootstrap
Components 15
App entry
- React bootstrap
src/main.jsx - App wrapper
src/App.jsx
Preset storage
- Preset controls
src/family-feud.jsx - Browser presets
src/family-feud.jsx - Supabase client
src/supabase.js
Round play
- Family Feud
src/family-feud.jsx - Game setup
src/family-feud.jsx - Answer board
src/family-feud.jsx - Team panels
src/family-feud.jsx
Game support
- Answer matching
src/family-feud.jsx - Score calculations
src/gameLogic.js - Sound playback
src/family-feud.jsx - Sound assets
public/sounds
Other components
- Host
- Hosted presets
Connections 15
- React bootstrap → App wrapper: renders
- App wrapper → Family Feud: renders
- Host → Family Feud: configures and plays
- Family Feud → Game setup: renders
- Family Feud → Preset controls: renders
- Preset controls → Family Feud: updates game state
- Family Feud → Browser presets: reads and writes
- Family Feud → Supabase client: preset CRUD
- Supabase client → Hosted presets: queries
- Family Feud → Answer board: renders and updates
- Family Feud → Team panels: renders and updates
- Family Feud → Answer matching: checks answers
- Family Feud → Score calculations: sorts and selects winner
- Family Feud → Sound playback: plays effects
- Sound playback → Sound assets: loads