Credits
Chess Knight is built on the generous work of other people. Here is what it uses, who made it, and its license.
Stockfish, the engine
Stockfish checks every review, every lesson and every game against the bot. It is by T. Romstad, M. Costalba, J. Kiiski, G. Linscott and the other Stockfish developers. It is free software under the GNU General Public License, version 3 (the license). Its source is on GitHub.
- In your browser: Stockfish 19, made for the web as Stockfish.js 19.0.0 by Nathan Rugg and Chess.com. We use its single-threaded “lite” build, with the small network nn-61e7af4bb97d by sscg13. We serve its two files exactly as published, with no changes.
- On our server: the official Stockfish 19 release for Linux, as released.
From Lichess
- Puzzles. When your own games do not have enough positions for a lesson, the lesson adds puzzles from the Lichess puzzle database. It is under CC0. Each puzzle links back to it on lichess.org.
- Opening names and the lines in Learn’s openings come from lichess-org/chess-openings, under CC0.
- The board is chessground 9.2.1, the board of Lichess. It is under the GNU GPL, version 3 or later. We changed one thing: pieces sit on whole pixels, so they stay sharp. The top of the file we serve says so.
- The pieces are the set by Colin M.L. Burnett (“cburnett”), which comes with chessground. They are under the GNU GPL, version 2 or later.
Your games come in through the public game APIs of Lichess and chess.com.
Fonts
- Fraunces, for headings, by the Fraunces Project Authors.
- Plus Jakarta Sans, for all other text, by the Plus Jakarta Sans Project Authors.
Both are under the SIL Open Font License 1.1.
More code in the page
- shaders 4.0.0, by Shader Effects Inc., for the moving backgrounds on devices that can show them: MIT license. It includes TypeGPU 0.12.3, tinyest 0.3.4 and typed-binary 4.3.3 (MIT), and tsover-runtime 0.0.7 (Apache 2.0).
- perfect-freehand 1.2.3, by Steve Ruiz, for the brushes in the Studio: MIT license.
- simpleheat 0.4.0, by Vladimir Agafonkin, for the heatmap of the site owner (players never load it): BSD 2-Clause license.
- The gear icon of the coach is from Lucide: ISC license.
On our server
- The voice of the coach: Kokoro-82M by hexgrad, with its voices am_michael and bm_george (Apache 2.0). The Brutal voice is Chatterbox-Turbo by Resemble AI (MIT).
- Clef checks usernames and uploads, and sorts bug reports. It is Clef-Flash by Cloudflare, built on Qwen3.5-9B by the Qwen team (both Apache 2.0). llama.cpp (MIT) runs it.
- To hear the sounds you upload: Whisper large-v3-turbo by OpenAI, through faster-whisper with Silero VAD (all MIT).
- To make your uploads safe to show: FFmpeg (GPL v3 as built here), and libvips, librsvg and bubblewrap (LGPL 2.1 or later).
- The site itself is written in Go. It uses modernc.org/sqlite (BSD 3-Clause; SQLite is in the public domain), coder/websocket (ISC), BurntSushi/toml (MIT) and andybalholm/brotli (MIT). The Markdown of the blog uses goldmark by Yusuke Inuzuka (MIT). It also uses x/crypto and x/text from the Go project (BSD 3-Clause). Its chess rules follow python-chess by Niklas Fiekas (GPL v3).
Pictures and sounds
- We made the paintings on the home page and in the lessons, and Coach Knight himself, with Grok, by xAI.
- Book covers in the Library belong to their publishers. The pictures come from Open Library and Penguin Random House.
- Your browser makes the sounds of the board from numbers, not recordings. Pieces, boards and sounds made in the Studio belong to the players who made them.

