Retour au classement

thomas-mauran/chess-tui

Rustthomas-mauran.github.io/chess-tui/

Play chess in any terminal. Rust TUI, Stockfish, Lichess.

chessgameratatuirusttuilichesschess-puzzlechessboardcommand-linecross-platformrust-toolsstockfish
Croissance des étoiles
Étoiles
1.1k
Forks
73
Croissance hebdomadaire
Issues
14
5001k
nov. 2023sept. 2024août 2025juil. 2026
Artefactscrates.iocargo add chess-tui
README

chess-tui

Chess in the terminal. Free, cross-platform terminal chess game in Rust. Local play, Stockfish, Lichess. 🦀

Chess TUI: terminal chess board with piece selection

Stars Downloads GitHub CI License: MIT GitHub release Built With Ratatui

Table of contents

Description

chess-tui is a free, open-source terminal chess game. Play with a friend locally, against any UCI chess engine (e.g. Stockfish), or online via Lichess. Runs on macOS, Linux, and Windows.

Quick Install

Homebrew:

brew install thomas-mauran/tap/chess-tui
chess-tui

Cargo:

cargo install chess-tui
chess-tui

Debian/Ubuntu:

DEB_URL=$(curl -s "https://api.github.com/repos/thomas-mauran/chess-tui/releases/latest" | jq -r '.assets[] | select(.name | endswith(".deb")) | .browser_download_url') && curl -LO "$DEB_URL" && sudo dpkg -i "$(basename "$DEB_URL")" && sudo apt-get install -f
chess-tui

Available on:

Packaging status

For installation via package managers or other methods, see the Installation Guide.

Features

Local 2 player mode Chess TUI local two-player mode in terminal
Play against any UCI chess engine Playing against UCI chess engine (e.g. Stockfish) in terminal
Lichess Integration

Play online on Lichess directly from your terminal!

Lichess integration menu in chess-tui

See Lichess Features for details.

Online multiplayer Chess TUI online multiplayer in terminal
Helper menu Chess TUI helper menu
Custom skins Chess TUI custom skins and piece styles demo

Quick Start

Connect a chess engine:

# Simple engine path
chess-tui -e /path/to/engine

# Engine with command-line arguments (e.g., GNU Chess with UCI mode)
chess-tui -e "/opt/homebrew/bin/gnuchess --uci"

# Stockfish example
chess-tui -e /opt/homebrew/bin/stockfish

See Bot Configuration for details.

Configure Lichess:

chess-tui -l YOUR_LICHESS_TOKEN_HERE

See Lichess Setup for details.

Other options: --depth 15 (engine depth), --difficulty easy|medium|hard|magnus, --no-sound. See Configuration for all flags and config file.

Controls

Key Action
Arrow keys or h/j/k/l Move cursor
Space Select piece / move
Esc Deselect or close popup
? Help menu
s Cycle skins
b Back to menu
q Quit

Press ? in-game for the full list.

Documentation

📚 Full Documentation (installation, configuration, Lichess, multiplayer).

  • Installation (Cargo, Homebrew, Debian/Ubuntu, Arch, NixOS, Docker, binary)
  • Configuration (config file, skins, bot, logging)
  • Lichess (seek game, join by code, ongoing games, puzzles)
  • Multiplayer (LAN and over the internet, e.g. with bore)

Platforms

Platform Install
macOS brew install thomas-mauran/tap/chess-tui or cargo install chess-tui
Linux cargo install chess-tui, .deb, or binary
Arch pacman -S chess-tui
NixOS nix-shell -p chess-tui or install from nixpkgs
Windows cargo install chess-tui

FAQ

  • Does it work with Stockfish? Yes. Run chess-tui -e /path/to/stockfish (see Bot Configuration).
  • Can I play on Lichess from the terminal? Yes. Get a Lichess API token and run chess-tui -l YOUR_TOKEN.
  • What is chess-tui built with? Rust, ratatui (TUI), shakmaty (chess), ruci (UCI engine support).
  • Where is the config? config.toml and skins.json in your config dir (e.g. ~/.config/chess-tui/ on Linux). See Configuration.

Troubleshooting

Run into issues? Check the docs: Lichess setup & troubleshooting, Bot configuration & troubleshooting. Otherwise open an issue.

Contributing

Contributions are welcome. See CONTRIBUTING.md for guidelines.


Terminal chess · Chess in the terminal · Chess CLI · Command line chess · Rust TUI · UCI engine · Lichess · Stockfish · ratatui

Dépôts similaires
lichess-org/lila

♞ lichess.org: the forever free, adless and open source chess server ♞

ScalaGNU Affero General Public License v3.0scalachess
lichess.org
18.5k2.7k
official-stockfish/Stockfish

A free and strong UCI chess engine

C++GNU General Public License v3.0chesschess-engine
stockfishchess.org
16.1k3k
jhlywa/chess.js

A TypeScript chess library for chess move generation/validation, piece placement/movement, and check/checkmate/draw detection

TypeScriptnpmBSD 2-Clause "Simplified" Licensechess
jhlywa.github.io/chess.js/
4.4k985
thomasahle/sunfish

Sunfish: a Python Chess Engine in 111 lines of code

PythonPyPIOthersunfishpython
chessprogramming.org/Sunfish
3.3k582
LeelaChessZero/lc0

Open source neural network chess engine with GPU acceleration and broad hardware support.

C++GNU General Public License v3.0alphazero-inspiredchess
lczero.org
3.2k600
niklasf/python-chess

A chess library for Python, with move generation and validation, PGN parsing and writing, Polyglot opening book reading, Gaviota tablebase probing, Syzygy tablebase probing, and UCI/XBoard engine communication

PythonPyPIGNU General Public License v3.0chessfen
python-chess.readthedocs.io/en/latest/
2.8k574
lichess-org/mobile

Lichess mobile app

DartGNU General Public License v3.0androidchess
2.4k453
Zeta36/chess-alpha-zero

Chess reinforcement learning by AlphaGo Zero methods.

Jupyter NotebookMIT Licensereinforcement-learningkeras
2.2k472
lichess-org/lichobile

lichess.org former mobile application / new one -> github.com/lichess-org/mobile

TypeScriptnpmGNU General Public License v3.0lichessstockfish
lichess.org/mobile
2.2k329
FreezingMoon/AncientBeast

The Turn Based Strategy Game/eSport. Master your beasts! 🐺

TypeScriptnpmGNU Affero General Public License v3.0gamejavascript
ancientbeast.com
1.9k698
franciscoBSalgueiro/en-croissant

The Ultimate Chess Toolkit

TypeScriptnpmGNU General Public License v3.0chesschess-database
encroissant.org
1.7k281
RonSijm/ButtFish

Effortlessly transmitting Morse Code of chess moves to your butthole 💝

C#buttplugchess
1.5k28