
npm install @lichess-org/stockfish-web@lichess-org/stockfish-web!npmjs.com/package/@lichess-org/stockfish-web
WebAssembly builds for Stockfish.
This package is optimized for the lichess.org website, which needs multiple builds and chess variants. It is not straight-forward to load and use.
Check out https://github.com/nmrugg/stockfish.js for a simpler browser Stockfish.
```Example: Clean and make all web targets
./build.py all clean
Use --cxx to override the default emcc flags which are -O3 -DNDEBUG --closure=1.
Use --ld to override default linker flags (--ld='-sENVIRONMENT=node' to target node).
Check ./build.py --help for the latest targets
To avoid installing or changing your emscripten version, use ./build-with-docker.sh or ./build-with-podman.sh:
`Example: Docker clean and make all targets for node as debug with SAFE_HEAP
./build-with-docker.sh --cxx='-O0 -g3 -sSAFE_HEAP' --ld='-sENVIRONMENT=node' all clean
./build.py downloads sources to the ./fishes folder then applies diffs from the ./patches folder.
Edit the Stockfish sources within ./fishes. Contribute your edits via patch file`
Example: Update
sf_17.1.patch with your source changes:
cd fishes/sf_17.1
git diff > ../../patches/sf_17.1.patch
`Run locally on node
`
./build.py --ld='-sENVIRONMENT=node'
node ./src/wasm-cli.js ./sf_18.js
uci
`Check the output of
uci for the correct nnue names and download ones you don't have from https://tests.stockfishchess.org/nnsNow you'll have to load the nnues. (see
./src/wasm-cli.js).`
big ./nn-c288c895ea92.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: cb3d4ee9
- tag: sf_18 (patch includes rebase of https://github.com/sscg13/Stockfish/tree/threat-small)
- nnue: nn-4ca89e4b3abf.nnue
- repo: https://github.com/official-stockfish/Stockfish
- commit: cb3d4ee9
- tag: sf_18
- big nnue: nn-c288c895ea92.nnue
- small nnue: nn-37f18f62d772.nnue
- repo: https://github.com/official-stockfish/Stockfish
- commit: fac506bd
- tag: stockfish-dev-20260204-fac506bd
- big nnue: nn-3dd094f3dfcf.nnue
- small nnue: nn-37f18f62d772.nnue
- repo: https://github.com/official-stockfish/Stockfish
- commit: 03e2748
- tag: sf_17.1
- nnue: nn-9067e33176e8.nnue
- repo: https://github.com/official-stockfish/Stockfish
- commit: 03e27488
- tag: sf_17.1
- big nnue: nn-1c0000000000.nnue
- small nnue: nn-37f18f62d772.nnue
- repo: https://github.com/fairy-stockfish/Fairy-Stockfish
- commit: a621470b
- nnues: see repo links