. ██████╗██╗ ███████╗███████╗███████╗ . . ██╔════╝██║ ██╔════╝██╔════╝██╔════╝ . . ██║ ██║ █████╗ ███████╗███████╗ . . ██║ ██║ ██╔══╝ ╚════██║╚════██║ . . ╚██████╗███████╗███████╗███████║███████║ . . ╚═════╝╚══════╝╚══════╝╚══════╝╚══════╝ . A lightweight terminal-based chess game written in C++
Cless (short for CLI Chess, even though it's a TUI) is a terminal-based chess game written in C++ that allows you to play chess locally against another human or against UCI-compatible chess engines.
- C++ Compiler: Supporting C++17 standard
- ncurses: For terminal UI functionality
- CMake: Version 3.25 or higher
- Make: Build system
-
Clone the repository:
git clone https://github.com/2viny/cless.git cd cless -
Create build directory and compile:
mkdir build cd build cmake -DCMAKE_BUILD_TYPE=Release .. make -
Run the executable:
./cless
If you're using Arch Linux, you can install directly using the provided PKGBUILD:
makepkg -siNote: In the future it will be possible to install cless from the AUR, once that is possible this README will be updated.
Start the game without any arguments for human vs human play:
clessTo play against a UCI-compatible chess engine:
cless --engine "/path/to/your/engine"Popular UCI engines you can use:
- Stockfish:
cless --engine "stockfish" - GNU Chess:
cless --engine "gnuchess"
Note: In the future cless is supposed to also allow options to be passed to the engine, this is a work in progress at the moment.
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Debug ..
makeContributions are welcome! Please feel free to submit a Pull Request.
- LAN Multiplayer Support: Play against friends over the network
- Game Analysis: Move history and position evaluation (when an engine is provided)
- Engine Configuration: Adjustable difficulty settings
This project is licensed under the MIT License - see the LICENSE file for details.