#chess-engine #onnx #detect #screen #moves #screen-capture #chess-board #lunar

app lunar-chess

A screen overlay that detects chessboards, recognizes pieces using ONNX, and displays best moves from a chess engine

5 releases

Uses new Rust 2024

0.3.4 Dec 3, 2025
0.2.3 Dec 2, 2025
0.2.2 Nov 26, 2025
0.2.1 Nov 26, 2025
0.2.0 Nov 26, 2025

#178 in Machine learning

MIT and GPL-3.0 licenses

150KB
4K SLoC

Lunar Chess

A screen overlay that detects chessboards, recognizes pieces using ONNX, and displays best moves from a chess engine.

Supported Platforms

Platform Status
Windows Supported
macOS Coming soon
Linux Coming soon

Setup

  1. Copy config.example.toml to config.toml
  2. Configure the required paths:
    • engine.path - Path to your UCI chess engine executable
    • detection.path - Path to the ONNX model for piece detection

Configuration

[engine]
path = "path/to/engine.exe"
args = []
profile = "default"

[profiles.default]
threads = 8
hash = 8192
multi_pv = 6
depth = 5

[detection]
path = "path/to/model.onnx"
piece_confidence_threshold = 0.75

[debugging]
level = "info"
stream_proof = true
show_grid = false
show_piece_labels = false

Usage

Run the application and it will automatically detect any chessboard on screen and overlay the best moves.

Dependencies

~40–92MB
~1.5M SLoC