atinm / liground

A free, open-source and modern Chess Variant Analysis GUI for the 21st century

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LiGround

A free, open-source and modern Chess Variant Analysis GUI for the 21st century

LiGround screenshot

Build Setup

# install dependencies
npm install

# serve with hot reload at localhost:9080
node src/server/index.js
npm run dev

# build electron application for production
npm run build


# lint all JS/Vue component files in `src/`
npm run lint

Post-Installation Actions

  • Move ffish.wasm of package ml-research/liground/node_modules/ffish-es6 to the main directory ml-research/liground.

  • Download a binary of Multi-Variant-Stockfish or build it from scratch.

  • Rename the Multi-Variant-Stockfish binary to stockfish and move it to ml-research/liground/src/server/engines.

Libraries

The following libraries or assets are used in LiGround:

Library Description Usage
ffish.js A high performance WebAssembly chess variant library based on Fairy-Stockfish as a standard module. Used in the back-end to parse the UCI replies of the active engine.
ffish-es6.js A high performance WebAssembly chess variant library based on Fairy-Stockfish as an ES6 module. Used in the GUI for legal move generation, FEN parsing & validation, pocket pieces, ...
ChessgroundX A free/libre open source chess UI developed for lichess.org and pychess.org. Used as the main UI board element.
ornicar/lila The forever free, adless and open source chess server Many high quality assets from lichess.org (e.g. piece styles, board styles, chess fonts, ...) are used within this GUI.
Vue.js The Progressive JavaScript Framework Used as the main JavaScript Framework.
Electron Build cross-platform desktop apps with JavaScript, HTML, and CSS Used for exporting the GUI to the desktop.
electron-vue An Electron & Vue.js quick start boilerplate Used for the boilerplate code.

Related

Projects that influenced the creation of LiGround:

Project Description
tinyChessServer An xboard server for playing bughouse games via websockets
lichess.org/analysis The forever free, adless and open source chess server
vue-chessboard Chessboard vue component to load positions, create positions and see threats
cutechess A graphical user interface, command-line interface and a library for playing chess.
XBoard / WinBoard A graphical user interface for chess in all its major forms.
Nibbler Leela Chess Zero (Lc0) interface.
chess.js A Javascript chess library for chess move generation/validation, piece placement/movement, and check/checkmate/draw detection

This project was generated with electron-vue@45a3e22 using vue-cli. Documentation about the original structure can be found here.

About

A free, open-source and modern Chess Variant Analysis GUI for the 21st century

License:GNU Affero General Public License v3.0


Languages

Language:Vue 40.1%Language:JavaScript 34.5%Language:CSS 24.7%Language:HTML 0.7%