Chess

Chess package for playing chess, with game logics, validations.

Installation

If available in Hex, the package can be installed by adding chess to your list of dependencies in mix.exs:

def deps do
[
{:chess, "~> 0.3.3"}
]
end

Start new game

alias Chess.Game
Game.new()

New game will be created with squares and figures, FEN-notation, and game's status

Make move

Game.play(%Game{}, "e2-e4")

After valid move game object will contain new figure's position and FEN-notation

Pion's promotion

Game.play(%Game{}, "e7-e8", "q")

Add third option if pion achives last line, one from [q|n|r|b], default - q

TODO

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/kortirso/chess.

License

The package is available as open source under the terms of the MIT License.

Disclaimer

Use this package at your own peril and risk.

Documentation

Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/chess.