Multiple stockfish wasms for use in lichess.org web analysis
# Example: Clean and make all debug builds for node with SAFE_HEAP
./build.py --flags='-O0 -g3 -sSAFE_HEAP' --node all clean
or to avoid installing or changing your emscripten version, use ./build-with-docker.sh:
./build-with-docker.sh --flags='-O3' all clean
omit --node for default web builds
use --flags to override the default emcc flags which are -O3 -DNDEBUG --closure=1
check ./build.py --help for the latest targets
./build.py downloads sources to the ./fishes folder then applies diffs from the ./patches folder.
Edit the Stockfish sources freely. But to contribute your edits, use a patch file
# Example: Update `sf16-7.patch` with your source changes:
cd fishes/sf16-7
git diff > ../../patches/sf16-7.patch
./build.py --node
node ./src/wasm-cli.js ./sf171-79.js
Now you'll have to set the uci options for the nnue.
nn-1c0000000000.nnue
small nn-37f18f62d772.nnue
The specific file names might change, so check the output of uci for the correct names.
- repo: https://github.com/official-stockfish/Stockfish
- commit: 9587eee
- tag: SF_classical
- repo: https://github.com/official-stockfish/Stockfish
- commit: 68e1e9b
- tag: sf_16
- nnue: nn-5af11540bbfe.nnue
- repo: https://github.com/linrock/Stockfish
- commit: c97f5cb
- nnue: nn-ecb35f70ff2a.nnue
- repo: https://github.com/official-stockfish/Stockfish
- commit: 03e2748
- tag: sf_17.1
- big nnue: nn-1111cefa1111.nnue
- small nnue: nn-37f18f62d772.nnue
- repo: https://github.com/fairy-stockfish/Fairy-Stockfish
- commit: a621470
- nnues: see repo links