How herdisheida/wordlepuzzle works
This is a terminal Wordle game. A player enters through the menu, configures a series, receives a random word of the chosen length, submits guesses for validation and feedback, and sees results; the series is then saved to per-user JSON history. The menu also supports adding words and browsing history and statistics. Edges reflect calls visible in excerpts or documented behavior; the word-bank file path in source differs in case from the tree, so storage is represented by its enclosing directory.
Main entry points: GameMenu.py Game menu · GameUI.py Round interface · GameHistoryUI.py History interface · WordleGame.py Wordle round
Components 13
Menu and play
- Program entry
start.py - Game menu
ui_layer/GameMenu.py - Round interface
ui_layer/GameUI.py
Game logic
- Wordle round
logic_layer/WordleGame.py - Guess record
logic_layer/Guess.py - Game series
logic_layer/GameSeries.py
Word and history storage
- Word bank
storage_layer/wordbank/WordBank.py - Word-bank files
storage_layer/wordbank - History storage
storage_layer/GameHistory_storage.py - User result files
storage_layer/results
History and presentation
- History interface
ui_layer/GameHistoryUI.py - Terminal formatting
ui_layer/ColorText.py
Other components
- Player
Connections 18
- Player → Program entry: starts
README.md - Program entry → Game menu: runs
start.py - Player → Game menu: chooses options
ui_layer/GameMenu.py - Game menu → Word bank: selects word
ui_layer/GameMenu.py - Game menu → Game series: creates series
ui_layer/GameMenu.py - Game menu → Wordle round: creates round
ui_layer/GameMenu.py - Game menu → Round interface: starts round
ui_layer/GameMenu.py - Round interface → Player: reads guesses
ui_layer/GameUI.py - Round interface → Wordle round: submits guesses
ui_layer/GameUI.py - Wordle round → Guess record: records guesses
logic_layer/WordleGame.py - Round interface → Game series: adds completed game
ui_layer/GameUI.py - Game menu → History interface: opens history
ui_layer/GameMenu.py - Game menu → History interface: saves series
ui_layer/GameMenu.py - History interface → History storage: loads and saves
ui_layer/GameHistoryUI.py - History storage → User result files: reads and writes
storage_layer/GameHistory_storage.py - Word bank → Word-bank files: reads and updates
- Round interface → Terminal formatting: formats feedback
ui_layer/GameUI.py - History interface → Terminal formatting: formats history
ui_layer/GameHistoryUI.py