cocode.dk About Dansk Español 中文 فارسی
Chess Puzzles logo: a board with the winning move highlighted

Sharpen your chess tactics, one move at a time

Solve thousands of real puzzles from the Lichess database on your Android phone. Find each move of the solution while the opponent replies automatically.

Free & open-source · Android 7.0+ · no account, fully offline

Built for focused practice

No menus to wade through, no sign-up. Open the app and you are already solving.

🧩

Real Lichess puzzles

Thousands of tactics sampled from the Lichess Open Database (CC0).

🎯

Find the solution

Each puzzle announces its goal, such as "checkmate in 2" or "gain a winning advantage". Find each move of the solution; the opponent replies after each one.

🎚️

Pick your level

Easy, Medium or Hard — jump between rating bands with one tap.

♞

Opening practice

Learn twenty openings move by move, then practise them from memory against selected replies.

🔥

Streaks & progress

Your solved count, puzzle streaks and day streak are saved on your phone, so you pick up where you left off.

📴

Fully offline

No account, no network. Every puzzle ships inside the app.

🌗

Light & dark themes

Matches your phone's light or dark setting, or switch to Light or Dark with the theme button. The dark theme dims the board for comfortable play.

👆

Tap or drag

Move pieces by tapping their starting and destination squares, or by dragging them.

⭐

Free & open-source

Apache-2.0 licensed. No ads and no tracking.

How it works

Open a puzzle

A position from a real game appears with its goal, for example checkmate in 2, gain a winning advantage or save the game. You play the side that is to move.

Find the best move

Tap a piece, then tap its destination, or drag the piece there. If your move is not the best one, try again.

See the reply

After each correct move, the opponent answers automatically. Keep playing your side until the puzzle is solved.

Keep your streak

Solve the next one. Your progress is saved on your phone.

Get the app

Free and open-source, for Android 7.0 and newer. Install it from F-Droid, or download the Android installation file (APK) from GitHub.

See it in action

A chess puzzle: white to find the winning move
A puzzle to solve
Dark theme: a chess puzzle with dimmed board and readable pieces
Dark theme, easy on the eyes
A solved chess puzzle with the streak counter updated
Solved, and your streak is saved
Learning the Italian Game move by move in the Openings tab
Openings: learn, then practise from memory

Open source

The source code is public, so you can inspect it and build the app yourself. Automated tests run every line of the code except the functions that draw the screens, and separate tests check those screens. Read the source code.

Kotlin Jetpack Compose Android 7.0+ chesslib 100% line coverage, excluding screen drawing Apache-2.0

Puzzles from the Lichess Open Database (CC0 1.0).

cocode.dk