How nortonmd/jeopardy works
Jeopardy! is a browser-only game: a player uploads a CSV, the browser parses and stores game data, and the game page builds an interactive board where clues and answers are revealed. The README also describes using a prompt in GENERATE.md with Claude to create game CSVs. Runtime links are based on the sampled JavaScript; page roles and CSV format follow the README, since HTML source was not sampled.
Main entry points: upload.js CSV parsing and loading · game.html Game board page · style.css Shared game styles · index.html CSV file input
Components 16
Game upload
- Upload screen
index.html - CSV file input
index.html - CSV parsing and loading
upload.js - Browser FileReader
- Stored game data
Game play
- Game board page
game.html - Board building
app.js - Tile interaction
app.js - Clue and answer modal
app.js - Fullscreen control
app.js - Shared game styles
style.css
Game generation
- Generation prompt
GENERATE.md - Generated game CSV
Other components
- Player
- Claude
- Browser
Connections 20
- Player → Upload screen: opens
- Player → CSV file input: selects file
- CSV file input → CSV parsing and loading: change event
- CSV parsing and loading → Browser FileReader: reads file
- Browser FileReader → CSV parsing and loading: returns text
- CSV parsing and loading → Stored game data: stores parsed data
- CSV parsing and loading → Game board page: redirects to
- Game board page → Board building: runs
- Board building → Stored game data: reads data
- Player → Tile interaction: clicks tile
- Tile interaction → Clue and answer modal: opens modal
- Player → Clue and answer modal: reveals answer
- Player → Fullscreen control: toggles
- Fullscreen control → Browser: requests fullscreen
- Shared game styles → Upload screen: styles
- Shared game styles → Game board page: styles
- Player → Generation prompt: uses prompt
- Generation prompt → Claude: guides generation
- Claude → Generated game CSV: generates
- Player → Generated game CSV: uploads