Blunderbase

Free and open-source
personal chess database

Blunderbase imports your games, runs Stockfish and Maia over every one of them, and keeps notes, stats and an opening explorer on top. Runs on your own machine, no account, no subscription.

macOSWindowsDockeriOS companion

The game screen. Stockfish's line on the board, Maia's guesses, your note beside the moves.

Notes

A note belongs to a position

Press N and write. The note sticks to the position, so it shows up in every game that reaches it, whatever the move order.

  • Tags, filters and three views on the notes page
  • Notes on a whole game or a saved line
  • Written by you or your AI assistant
  • Export to Markdown or PGN
The notes page. Every note with its position and the games that reach it.

Your own eyes first

The engine waits until you ask

⇧E hides every engine verdict: the eval, the ?? badges, the graph, the lines. Moves, clocks and notes stay. Make up your own mind, then compare.

Or have new games arrive that way. Pick the speeds, say classical only, and each game stays quiet until you press Show the engine. Bullet games still show it right away.

The same game, engine hidden.

What it does

Game analysis

Stockfish grades every move. Maia, trained on human games, says what players at several ratings would have played instead. Blunders are marked in the move list and on the eval graph, and the engine lines are drawn on the board.

Personal database

Your games from Lichess, Chess.com, FICS and PGN files in one library, synced on a schedule. Collections to group them, an explorer with win stats over your own games, and reference games you add to study.

Your AI assistant

An MCP server is built in. Connect your own assistant, Claude or any other MCP client, ask about last week's games, and it reads the same engine numbers and notes you do, on a live board you both see.

Server and Docker installs only. The desktop app has no MCP server yet.

Analysis needs an engine. The Docker image ships Stockfish. The desktop app uses a Stockfish on your machine, the browser's WebAssembly build, or a remote runner. Maia is a separate download in every case, and without it the human-move overlay stays empty.

On your phone

The iOS companion connects to a Blunderbase you host. Games list, game screen with the eval graph and the moves, notes, and live engine analysis that runs on the server rather than the phone, so the numbers match what the browser shows.

Not on the App Store yet. It is in TestFlight: open an issue on GitHub and ask for an invite. Android is on the roadmap.

Features

Around the library

The overview: rating, recent games, and the worst moments of the last thirty days.
The explorer. Your own move tree with win rates, next to the masters and Lichess books.
Stats. Blunders by phase, by time control, by how much clock was left.
The library, with filters that stack and the blunder count on every row.

Get it

Desktop

A single app for macOS and Windows with the backend inside. No terminal, no container, no account. Your library lives in the normal application-data folder. Point it at a Stockfish on your machine, or let the browser's WebAssembly build do the work.

macOS (Apple silicon) Windows (x64)

Version 1.10.0, see the changelog. Unsigned builds for now: macOS asks you to allow the app in System Settings, Windows shows a SmartScreen notice. Intel Macs and Linux are on the roadmap.

Docker

# A sample compose file: one service, one volume.
curl -O https://blunderbase.org/docker-compose.yml
docker compose up -d
# Or without compose:
docker run -d --name blunderbase -p 8765:8765 \
  -v blunderbase-data:/data \
  ghcr.io/philphilphil/blunderbase:latest

Open it in a browser, choose a password, connect an account. Create a separate key on the Assistant page to connect your AI assistant. TLS, reverse proxies, remote engine runners and the CLI are in the manual.

Roadmap