GithubHelp home page GithubHelp logo

sagnikmajumder89 / stockfish.js Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nmrugg/stockfish.js

0.0 0.0 0.0 134.54 MB

The Stockfish chess engine in Javascript

License: GNU General Public License v3.0

Shell 0.01% JavaScript 13.47% C++ 76.50% Python 0.27% C 1.45% Makefile 4.18% HTML 4.02% WebAssembly 0.10%

stockfish.js's Introduction

Stockfish.js

Stockfish.js is a WASM implementation of Stockfish chess engine.

Stockfish.js is currently updated to Stockfish 16.

This edition of Stockfish.js comes in four flavors.

  • The full mult-threaded engine:
    • This is best version of the engine but will only run in new browsers with the proper CORS headers applied.
    • Files: stockfish-nnue-16.js & stockfish-nnue-16.wasm
  • The single-threaded engine:
    • This will run in most browsers but is not as responsive as the multi-threaded version.
    • Files: stockfish-nnue-16-single.js & stockfish-nnue-16-single.wasm
  • The mult-threaded non-SIMD engine:
    • Requires CORS headers but will run on older browsers that do not support SIMD (such as older Safari):
    • Files: stockfish-nnue-16-no-simd.js & stockfish-nnue-16-no-simd.wasm
  • The mult-threaded non-nested worker:
    • Designed specifically to workaround a bug in Chrome 109. Requires CORS headers.
    • Files: stockfish-nnue-16-no-Worker.js & stockfish-nnue-16-no-Worker.wasm

For older WASM engines or a pure ASM.JS engine, see the Stockfish.js 11 branch.

API

You can run Stockfish.js directly from the command line with Node.js 14.4+. You may need to add some command line flags to get it to run:

node src/stockfish.js

Stockfish.js can be found in the npm repository and installed like this: npm install stockfish.

If you want to use it from the command line, you may want to simply install it globally: npm install -g stockfish. Then you can simply run stockfishjs.

In Node.js, you can either run it directly from the command line (i.e., node src/stockfish.js) or require() it as a module (i.e., var stockfish = require("stockfish");).

Compiling

You need to have the emscripten compiler installed and in your path (tested with 2.0.26). Then you can compile Stockfish.js with the build script: ./build.js. See ./build.js --help for details.

Example

There are examples in the example folder. You will need to run the example/server.js server to view the client-side examples.

There are also example using Node.js.

Thanks

License

GPLv3 (see license.txt)

stockfish.js's People

Contributors

mcostalba avatar nmrugg avatar zamar avatar lucasart avatar glinscott avatar r-peleg avatar joergoster avatar exoticorn avatar ceebo avatar uriblass avatar jromang avatar jundery avatar ajithcj avatar zardav avatar tomtor avatar hxim avatar ryantaker avatar snicolet avatar daylen avatar kingdefender avatar locutus2 avatar jcalovski avatar jprostko avatar lucabrivio avatar tjaderxyz avatar shane31 avatar jhellis3 avatar matt14916 avatar sf-x avatar britvich avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.