fenfurnace

0.3.1 • Public • Published

Latest version Last updated npm downloads

FenFurnace

A tool for validating chess piece movement generated from a FEN position.

Install

FenFurnace is available on npm:

npm install fenfurnace

API

Functions

  • setupBoard()
    • Initialises a new chess game with the default FEN and move data.
  • createBoard(fen)
    • Creates a board from a given fen string.
  • validation.validateMove(startCell, endCell)
    • Check that a given move is valid; calls isValid() and pieceInWay().
  • validation.isValid(startCell, endCell)
    • Check that a given move obeys the rules of chess.
  • validation.pieceInWay(startCell, endCell)
    • Check if there are any pieces between two cells.
  • validation.makeMove(startCell, endCell)
    • Attempt to move a piece; returns false if invalid.
  • undoMove()
    • Undoes and returns the last move.
  • findAllMoves(cell)
    • Return an array of all valid moves from a given cell.
  • isCheck(colourId)
    • Checks whether a given colour ('w' or 'b') is currently in check.
  • gameEndingStatus(colourId)
    • Check the game has concluded and the result of the game ('checkmate', 'stalemate', or false) for a given colour ('w' or 'b').

Variables

The following values are given in import gameData:

  • castling: { w: { k, q }, b: { k, q } } (each boolean)
  • boardArray (array)
  • enpassantSquare (null or string)
  • moveList (array)
  • currentTurn (null or string)
  • halfMoveCount (int)
  • moveNumber (int or string)
  • promotionPiece (string)
  • logList (array)

Build

Build code for browser use using npm run compile.

Package Sidebar

Install

npm i fenfurnace

Weekly Downloads

0

Version

0.3.1

License

ISC

Unpacked Size

23.8 kB

Total Files

20

Last publish

Collaborators

  • carbonchess