Project Description
I want a small, classic-looking web app that feeds Stockfish moves to visitors as if they were playing an opponent of a chosen ELO, but without ever revealing the underlying numbers that drive the “human” mistakes. Internally I should be able to set – and later tweak – how many blunders, mistakes and inaccuracies Stockfish will sprinkle across a full game for any given rating (for example 2 blunders, 4 mistakes and 4 inaccuracies for 1200 ELO). Those values must live in a single JSON or database table so I can edit them without touching code.
Key flow
• Visitor lands on the page (desktop or mobile), enters an ELO, hits “Play”.
• Behind the scenes you call Stockfish, bias its move selection to respect my blunder/mistake/inaccuracy table, and serve the resulting move.
• The visitor never sees the engine depth, score or any hint of the distortion parameters.
• Registered users can log in so their finished games are stored under their profile; for now no social feed, leaderboards or sharing is required.
Admin needs
• Simple login for me as super-admin.
• Screen or config file where I can add/edit the per-ELO mistake matrix and, if needed, switch the engine executable path.
Design & tech notes
• Classic, clean layout with minimal graphics; think lichess “Zen” rather than animated.
• Responsive so it looks fine on phones and desktop monitors.
• I’m open to React, Vue or vanilla JS on the front end and a lightweight Node or Python (Flask/FastAPI) backend—use what lets you integrate Stockfish easiest.
• Please store games as PGN in a relational DB (SQLite or Postgres).
Deliverables
1. Complete source code with setup instructions.
2. Deployed version on my hosting (cPanel or simple VPS).
3. Brief README showing where to adjust the blunder/mistake/inaccuracy values.
4. One-week post-launch bug-fix window.
If anything is unclear, let me know—otherwise I’m ready to get started.