Skip to content
Play in your browser

Play in your browser

No board? No problem. The chess engine from the ESP32 boards also runs right here, in your browser – the same Rust code, the same neural network, the same web app.

A game in the browser – the same app the boards serve over Wi-Fi

Your browser becomes the board

When you open the game, your browser downloads a small WebAssembly module (about 290 kB, neural network included) and runs everything locally:

The game server

The same hub that manages players, games and clocks on the ESP32 runs in the page. The web app talks to it exactly as it talks to a board over Wi-Fi – only without the network.

The engine

The search and the NNUE evaluation run in a background thread (a Web Worker), so the page stays responsive while the engine thinks.

Nothing leaves your device

There is no server-side engine and no account. Once the page has loaded, the game needs no connection at all.

Play against a board – on any computer

A browser on a desktop PC searches 10–20 times more positions per second than the ESP32-S3. To let you play against the board rather than your computer, you pick the strength:

StrengthPositions per second of thinkingHash tableElo
Like ESP32-S3 (default)40,0001.75 MB~2700
Like ESP32-C618,00040 kB~2550
Like ESP32-C313,0008 kB~2400
Full power of this deviceas many as fit in the time16 MBmuch stronger

In the board modes the engine gets exactly as many positions per move as the chosen board would search in the same time, with the board’s hash table size. The search itself is the same as on the board, so the strength follows the measured ratings on a fast desktop and a slow phone alike – only the stopping rule differs (positions instead of time), so it is close but not exact. The engine simply answers sooner than the board would. The eight difficulty levels work on top of that, as on the board.

Choosing the level and the engine strength

What you can do

  • Play the engine at eight levels, with or without a clock, as White, Black or random.
  • Ask for a hint (searched at least 8 plies deep), take back moves, flip the board, step through the game and copy it as PGN.
  • Dark and light themes, three board colours, sound, English and Czech.
  • See what the engine is doing: depth, speed and the device information.

Device information in the browser version

Compared with a real board

BrowserESP32 board
Engine and neural networksamesame
Playersyouup to 24 on the board’s Wi-Fi
Games against friends–✓
Demo game when nobody plays–✓
Display, QR codes–✓ (ESP32-C6)
After reloading the pagea fresh startgames keep running

Want the real thing on your desk? Install the firmware on a board – right from this website, in about a minute.

Questions

Does it work on a phone?

It needs a current browser with WebAssembly and Web Workers, which all major browsers on computers, tablets and phones have. In the board modes a slower device keeps the strength – it just thinks a little longer.

Does it work offline?

Once the page has loaded, the game runs without a connection. Reloading needs the network.

Why is the full-power mode so much stronger?

It uses the whole time per move and a large hash table. A desktop PC searches about three quarters of a million positions per second in WebAssembly – some twenty times more than the ESP32-S3.