Summary
Create a simple graphical UI so users can play against the AZ-Lite engine without using the command line.
Motivation
A GUI lowers the barrier for non-technical users and makes demos/screenshots/GIFs easier to produce. It also helps testers and contributors validate moves visually.
Acceptance criteria / Definition of Done
- A minimal GUI (single-file or small module, e.g.,
gui.py) that displays a chessboard and lets the user:
- Make moves via mouse clicks.
- See the engine play its reply move.
- Reset the board and choose who starts (white/black).
- The GUI uses a lightweight dependency (suggested:
tkinter to avoid extra installs; PySimpleGUI/pygame are acceptable).
README.md updated with instructions to run the GUI (python gui.py) and any dependency note.
- A short demo GIF (10–15s) showing a human vs engine game added under
docs/ or assets/.
Implementation notes / suggestions
- Keep it minimal: board rendering, move handling, and call into the existing
run_play/engine API to get the engine move.
- Provide a “headless” mode for CI/tests if needed.
- Add a small test that the GUI can start and close (smoke test).
Complexity
Medium (but approachable as a first contribution). Provide helpful pointers for new contributors.
Summary
Create a simple graphical UI so users can play against the AZ-Lite engine without using the command line.
Motivation
A GUI lowers the barrier for non-technical users and makes demos/screenshots/GIFs easier to produce. It also helps testers and contributors validate moves visually.
Acceptance criteria / Definition of Done
gui.py) that displays a chessboard and lets the user:tkinterto avoid extra installs;PySimpleGUI/pygameare acceptable).README.mdupdated with instructions to run the GUI (python gui.py) and any dependency note.docs/orassets/.Implementation notes / suggestions
run_play/engine API to get the engine move.Complexity
Medium (but approachable as a first contribution). Provide helpful pointers for new contributors.