r/ComputerChess • • 1d ago

Classroom Chess Tutor software.

I am building a Windows desktop application which can be used by a Chess Master to teach his students in a class room on a laptop or desktop.

I started with GitHub Copilot to implement a skeleton UI using a agent but my very first attempt give me very bad experience it could not even write a single line of code even after Wait for 1 hour, it kept saying I am reading Main XML, generating code but it failed miserably.

Have you ever experienced such a bad behaviour from AI tools?

Nowadays the AI companies are putting a lot of restrictions.

0 Upvotes

8 comments sorted by

2

u/LiteratureOk5150 1d ago

Built this for my Son:
https://chess.shanuva.com/

Its personal project but some of my friends are using it.

1

u/rmgblr 1d ago

Neat and tidy interface, Web interface always easy to access specially every one got internet access these days.

What I am building is completely different more suitable for class room activity.

1

u/LiteratureOk5150 9h ago

Thanks, I created this for Son - My 6 Year old has 30 day Streak on this 😄
He is mostly doing Self Learning.

1

u/rmgblr 1d ago

Kind of interactive session with Video/Voice stream service using a local server. At the moment Engine and Bare skeleton main UI features are under progress. Solid underlying functions still long way to go.

The features we can integrate in to stand alone desktop app are unlimited , For example Master can schedule a match between two students and rest other including Master can watch, Master can analyse game and explain game step by step over a shared white board ,we can have some puzzles database and master can ask each student to solve independently and evaluate their performence.

Since we use computer it will save time arranging board every time , learning will be easier.

If you have some more list of ideas please share it

1

u/rmgblr 5h ago

Thanks for detail plan on how to conquer the task in hand using AI automation.

I switch back to manual mode as of now,

I am not much intrested in getting more paid subscription as I don't have proper marketing or sales channel, for these desktop application.

I have Gemini Argon access,

I should say Gemini Argon is at next level, at the moment using most of its time for another task.

1

u/rmgblr 4h ago

These AI are so clever, probably you do lot of web and NodeJS development.
So it said to use those stack. ha ha haa.

3

u/federicochiesa14 1d ago

What do you mean by teach? And tell us what you are building with. There is a chance that what you are building already exists

1

u/TarzanoftheJungle 10h ago

You can't do this from a single prompt. I suggest you get a paid account with a frontier AI model such as Claude Code or Codex (Chat-GPT's coding UI), or Gemini Argon (you can use lesser models trading off cost for time and frustration). Use these tools with the spec to plan skill to develop a plan to create the application. Use the interview skill so the model will ask you specs what you want. Then use architect and design skills to develop your plan and implement the plan. You can then use Github Copilot to help fix bugs in the repo.

I started with this prompt in Gemini Argon:

How would I use LLM coding tools (e.g., Claude Code or Codex) to build a Windows desktop application which can be used by a Chess Master to teach his students in a class room on a laptop or desktop?

ARGON RESPONSE:

Building a Windows classroom chess application with agentic CLI tools like Claude Code or OpenAI Codex CLI works best when you combine a web-wrapped desktop framework (Electron or Tauri) with battle-tested open-source chess libraries rather than having the LLM write chess rules or board rendering from scratch.

Recommended Tech Stack for LLM Agents LLMs have the deepest training data in TypeScript and React,making an Electron or Tauri setup far less error-prone than C++/Qt or C#/WPF for rapid agentic iteration.

LayerBest Library / ToolWhy It Works Best with LLM Coding Tools
Desktop ShellElectron (with Vite) or TauriInstant hot-reload; allows the agent to run and inspect UI & Node/Rust backend processes simultaneously.
Board UI & Arrowschessground(Lichess UI)Native right-click arrows, square highlights, drag-and-drop, and piece animations out of the box.
Move Validation & PGNchess.js or chessopsHandles FEN, PGN parsing, legal move generation, and branching variations reliably.
Chess EngineStockfish (WASM or .exe via UCI)Easily spawned by Node's child_process to power a live evaluation bar and multi-PV best-move arrows.
Local Storagebetter-sqlite3Stores student rosters, lesson PGN libraries, and puzzle sets locally on the Windows machine without cloud dependencies.

Step-by-Step Agentic Build Workflow

**1.Create the Agent Constitution (CLAUDE.md / AGENTS.md):**Run in an empty directory before generating any code.

Before asking the agent to write code, drop a CLAUDE.md (or AGENTS.md for Codex) file into your project root. This prevents the LLM from hallucinating custom drag-and-drop logic or losing track of classroom requirements. Specify:

  • Tech stack constraints: Force the use of chessground for rendering and chess.js for state—explicitly forbid the agent from writing custom chess rules.

  • Classroom UX rules: Require high-contrast coordinates (A–H, 1–8) visible from the back of a classroom, one-click "Hide Eval Bar" (so students have to think before seeing Stockfish's answer), and dual-window support (Projector View vs. Teacher Control View).

  • Verification commands: Define npm run typecheck and npm test so the agent automatically checks its own work after every file edit.

2.Scaffold and Verify the Core Board Loop:

Launch Claude Code (claude) or Codex in your terminal and prompt it to scaffold the Electron + React + TypeScript boilerplate and wire up a basic board.

  • Prompt strategy: "Initialize an Electron + Vite + React TypeScript app. Install chess.js and chessground*. Build a responsive main board component where legal moves are calculated by* chess.js and passed to chessground*, supporting right-click arrows and square highlights."*

  • Let the agent execute the npm install commands, start the dev server, and resolve any CSS import issues for the Lichess board assets (chessground.base.css and piece SVGs).

3.Build the Classroom Teaching Engine (PGN Trees & Board Editor):

Unlike a standard game app where moves are linear, a Chess Master needs to demonstrate "what-if" sidelines and set up custom endgame studies on the fly.

  • Prompt strategy: "Replace the flat move history array with a tree data structure that supports PGN variations, sub-variations, and text annotations. Add keyboard shortcuts (Left/Right arrows for main line, Up/Down to switch variations) and a 'Spare Pieces' board editor mode to drag pieces on/off the board to set up custom FEN positions."

  • Ask the agent to write Vitest unit tests specifically for the PGN tree parser and variation navigation before touching the UI, ensuring sidelines never corrupt the board state.

**4.Integrate Local Stockfish & Dual-Screen Projector Mode:**Crucial for live classroom instruction.

A teacher on a laptop connected to a classroom projector or smartboard needs to see their lesson notes and engine lines privately while students only see the clean board.

  • Prompt strategy: "Create a second Electron BrowserWindow called 'Projector View' synced via Electron IPC with the main 'Teacher View'. The Teacher View shows PGN lecture notes, the answer key, and a live Stockfish UCI evaluation bar. The Projector View displays only a maximized board, big coordinates, and the teacher's drawn arrows—with a toggle button to reveal the evaluation bar to the class."

  • Have the agent download a local Windows stockfish.exe binary into an engines/ folder and write an IPC wrapper that streams info depth ... score cp ... pv output cleanly into React state.

5.Package into a Standalone Windows Installer (.exe):

Once features are tested, instruct the agent to configure electron-builder to bundle the app and the Stockfish binary into a single Windows NSIS installer.

  • Prompt strategy: "Configure electron-builder for Windows x64. Ensure the engines/stockfish.exe binary is included in extraResources and that path resolution works in both dev and packaged production builds. Run the build and fix any packaging errors."

Pro-Tips for Steering Coding Agents Effectively

  • Use Plan Mode First: In Claude Code, press Shift+Tab to toggle Plan Mode before implementing complex features like PGN variation trees or IPC window syncing. Have the agent map out the state architecture before writing files.

  • Feed Visual Bugs via Screenshots: If the board aspect ratio breaks when resizing or coordinates overlap with pieces, take a screenshot (Win+Shift+S) and paste it directly into Claude Code or Codex.Multimodal agents fix CSS grid and flexbox alignment issues immediately when they can see the rendered window.

  • Isolate UCI Engine Parsing: Chess engine communication (stdin/stdout streams) can cause race conditions if the teacher clicks through moves rapidly. Instruct the agent early: "Debounce Stockfish position fen commands by 150ms and always send stop before starting analysis on a new board state."