Skip to content

Hatscat/limpidchess

Repository files navigation

Limpid Chess icon

Limpid Chess

A smooth chess game where every turn shows three moves: find the best one.

License: GPL-3.0 Platform: Android Engine: Godot 4.6 Chess brain: Stockfish

Website · Privacy · Terms

Download

Get it on Google Play

Android. Free, with an optional one-time Premium.


Most chess apps drop a beginner onto a blank board of thirty legal moves, and they freeze. Limpid Chess removes that friction: every turn it surfaces exactly three moves, the best, a "not bad" one, and a blunder, drawn as plain numbered arrows. You don't get told which is which. You pick, and only then do the colors, a symbol, and a coin reveal how you did. Mistakes are the lesson, never the punishment.

"The move is there, but you must see it." Tartakower

It is built beginner-first but grows with you: the opponents climb from a gentle first-timer to a real challenge, a rising puzzle streak keeps the tactics coming, and a two-player Face to Face mode is fun at any level.

How it works

Three moves shown in one neutral color   The same moves revealed as best / OK / blunder

  1. Find the best. Three moves, one color, no hints.
  2. See why. Pick one and the qualities reveal: green is best, blue is OK, red is the blunder, each with a clear symbol so it reads without relying on color.
  3. Learn. Collect a coin, see what the best move was, and slowly start spotting the good moves yourself.

Home screen   Move-by-move review: the best line vs the move you played   Puzzle streak   Face to Face, two players on one device

Features

  • Three guided moves every turn, the whole product, shown neutrally so you must find the best.
  • Puzzles that climb. A rising streak of real tactics from the Lichess database, each still just three moves. One attempt a day for free players; unlimited with Premium.
  • Review every game. Step through afterwards to see the best line, replay where your move went wrong, and watch the evaluation swing, so every game teaches you something.
  • Calm and kind. Soft palette, no clocks, no shame on losing. Feedback teaches, it never scolds.
  • Bots that grow with you. Stockfish dialed down for real beginners and kids, climbing to a genuine challenge, with a relative difficulty meter instead of a scary rating.
  • Face to Face. Local two-player on one device, with the same three-move guidance for both sides.
  • Offline, no ads, no accounts, no tracking. One small save file on your device.
  • Accessible. OpenDyslexic typeface, color-blind-safe move symbols, board coordinates.
  • Free, with an optional one-time Premium (no subscription, ever) for unlimited games, all bots, and Face to Face.

Built with

  • Godot 4.6, Android-first, custom-drawn 2D board.
  • Stockfish as the chess brain, driven over UCI. Embedded as a native GDExtension on Android (where a subprocess can't run) and a subprocess on desktop.
  • A plain-GDScript rules engine (ChessRules) as the source of truth for legality, SAN, FEN, and draw detection, perft-validated. A GDScript ChessBot serves as an offline fallback.

A deeper tour of the architecture lives in CLAUDE.md; local dev recipes are in HOW_TO.md.

Build & run

Requires Godot 4.6 on your PATH.

# Open in the editor
godot --path .

# Headless sanity check (imports, loads autoloads + scenes)
godot --headless --path . --quit

# Move-generation correctness (run after any rules change)
godot --headless --path . -s res://scripts/dev/perft_test.gd

# Whole-project smoke test
godot --headless --path . -s res://scripts/dev/validate.gd

Building the native Android Stockfish and exporting the app are covered in HOW_TO.md.

Roadmap

Shipped:

  • The three-move mechanic, opponents, coins, and the move-by-move game review
  • Puzzles: a rising-difficulty streak of tactics from the Lichess open puzzle database (CC0), one wrong move ends the run, beat your best streak, one attempt a day for free players
  • Face to Face local two-player
  • Localized into 13 languages (English, French, Spanish, Portuguese, German, Italian, Russian, Turkish, Polish, Indonesian, Vietnamese, Ukrainian, Greek), with a scalable language picker
  • Sound effects and settings
  • One-time Premium via Google Play Billing (localized price, restore, promo codes)
  • Marketing site (landing, privacy, terms)

Planned:

  • Verify the embedded native Stockfish on real Android devices
  • Publish to Google Play (in review)
  • More bots, for a smoother difficulty climb: extra opponents between the current tiers so the jump from one to the next is gentler as you improve
  • Historic Games, a new mode: replay famous games by stepping into a protagonist's shoes (say White in Morphy's Opera Game) with the same three-move mechanic each turn, where "best" is the move actually played. A health bar counts your mistakes, and the game ends when it runs out.
  • Any further Latin/Cyrillic/Greek language needs only translating (the bundled font already covers the script), so more can be added cheaply on demand
  • Chinese / Japanese / Korean / Arabic (these need an additional font; Japanese is the best single bet, Simplified Chinese is not worth it on Google Play)
  • Upgrade to Godot 4.7 post-launch (checklist in HOW_TO.md)

Contributing

Limpid Chess is open source and built by one person, so it is opinionated and the scope is kept deliberately small (see the Core Principles in CLAUDE.md). Bug reports, fixes, and translation help are very welcome via issues and pull requests. By contributing you agree your work is licensed under GPL-3.0 (below).

License

Limpid Chess is free software under GPL-3.0, because it ships Stockfish (GPL-3.0). You may use, study, modify, and redistribute it, including selling the binary, as long as you also make the corresponding source available under the same license.

Credits


Made by Lone Bee · github.com/Hatscat

About

A smooth chess game where every turn shows three moves, your job is to find the best one.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Contributors