A comprehensive chess application that combines a playable chess game with powerful analysis capabilities. Built with SFML for the game interface and Electron for the analysis tool.
-
Chess Game
- Full chess game implementation with all standard rules
- Support for special moves (castling, en passant, pawn promotion)
- Multiple game modes:
- Player vs Player
- Player vs Computer (Stockfish integration)
- LAN multiplayer (Host/Client)
- Beautiful UI with piece animations and move sounds
- Move validation and legal move highlighting
-
Analysis Tool
- Built-in Stockfish engine analysis
- Move accuracy evaluation
- Position evaluation graph
- Move classification (Best, Excellent, Good, Inaccuracy, Mistake, Blunder)
- Opening recognition
- Cloud evaluation integration with Lichess
- PGN import/export support
- Windows OS
- C++ compiler (MinGW-w64 recommended)
- Node.js and npm
- SFML library
- Stockfish chess engine
- Clone the repository:
git clone https://github.com/yourusername/Chess-game.git
cd Chess-game-
Install SFML dependencies:
- Make sure SFML libraries are in the root directory:
- sfml-audio-2.dll
- sfml-graphics-2.dll
- sfml-network-2.dll
- sfml-system-2.dll
- sfml-window-2.dll
- Make sure SFML libraries are in the root directory:
-
Install Node.js dependencies for the analysis tool:
cd chessAnalysis
npm install- Make sure Stockfish is available in the root directory as
stockfish.exe
- Run the chess game by executing
main.exeor compiling and running with:
make
./main.exe- Select your game mode:
- Two Player: Play locally against another person
- vs Computer: Play against Stockfish engine with adjustable difficulty
- LAN Game: Play over local network
- After a game is finished, click the "Analyze" button to launch the analysis tool
- The game will be automatically loaded into the analyzer
- You can also manually load PGN files for analysis
- Left-click to select and move pieces
- Valid moves will be highlighted
- Use the analysis tool's playback controls to review moves:
- ⏮️ Back to start
◀️ Previous move▶️ Next move- ⏭️ Go to end
- 🔄 Flip board
/src- Main chess game source code/coding- Game assets and resources/images- Piece and UI images/sounds- Game sound effects/font- UI fonts
/chessAnalysis- Analysis tool source code/freechess- Analysis engine and UI
- Compile the chess game:
make- Build the analysis tool:
cd chessAnalysis
npm run buildContributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- SFML library
- Stockfish.org chess engine
- Electron framework
- WintrCat for the amazing post-game analysis
