thomas-mauran/chess-tui

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

Rust

1,198

255 commits

updated Oct 10, 2026

See the code

See what people are saying

SourceMessageScoreDate

chess analysis as TUI (r/commandline)

Hello guys, I did a small chess TUI for analyzing games, largely inspired by common analyses UX. This is not entirely new, most gain here is convenience. It is made solely for analysis. You can start an analysis from a FEN string, PGN file, PGN text from your clipboard, public link from…

5

Oct 9, 2026

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

KeyAction
Arrow keys or h/j/k/lMove cursor
SpaceSelect piece / move
EscDeselect or close popup
?Help menu
sCycle skins
bBack to menu
qQuit

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

PlatformInstall
macOSbrew install thomas-mauran/tap/chess-tui or cargo install chess-tui
Linuxcargo install chess-tui, .deb, or binary
Archpacman -S chess-tui
NixOSnix-shell -p chess-tui or install from nixpkgs
Windowscargo 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

chess
chessboard
chess-puzzle
command-line
cross-platform
game
lichess
pgn
pgn-reader
ratatui
rust
rust-tools
stockfish
terminal
tui
uci

thomas-mauran/chess-tui

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

Rust

1,198

255 commits

updated Oct 10, 2026

See the code

See what people are saying

SourceMessageScoreDate

chess analysis as TUI (r/commandline)

Hello guys, I did a small chess TUI for analyzing games, largely inspired by common analyses UX. This is not entirely new, most gain here is convenience. It is made solely for analysis. You can start an analysis from a FEN string, PGN file, PGN text from your clipboard, public link from…

5

Oct 9, 2026

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

KeyAction
Arrow keys or h/j/k/lMove cursor
SpaceSelect piece / move
EscDeselect or close popup
?Help menu
sCycle skins
bBack to menu
qQuit

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

PlatformInstall
macOSbrew install thomas-mauran/tap/chess-tui or cargo install chess-tui
Linuxcargo install chess-tui, .deb, or binary
Archpacman -S chess-tui
NixOSnix-shell -p chess-tui or install from nixpkgs
Windowscargo 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

chess
chessboard
chess-puzzle
command-line
cross-platform
game
lichess
pgn
pgn-reader
ratatui
rust
rust-tools
stockfish
terminal
tui
uci

Project health

crates.io

Latest release

2.7.1 · May 21, 2026

Releases this year

14

Significant stargazers

Bartosz Kaszubowski

469 followers · starred Aug 2026

Thibault Duplessis

6,499 followers · starred Jan 2026

tranzystorekk

111 followers · starred Dec 2023

Axel H.

288 followers · starred Dec 2025