Sha256: 2430ff58b6f7ef04f327d533c4fbcc27e1b57689c1a757d50b690982e2144af9

Contents?: true

Size: 1.19 KB

Versions: 4

Compression:

Stored size: 1.19 KB

Contents

# Chess

![build](https://github.com/pioz/chess/workflows/Ruby/badge.svg)
[![codecov](https://codecov.io/gh/pioz/chess/branch/master/graph/badge.svg?token=bsSUOW6wWa)](https://codecov.io/gh/pioz/chess)

A fast Ruby gem to play chess with Ruby. This library is quite fast because manage game situations with [bitboards](https://en.wikipedia.org/wiki/Bitboard). Also, the move generator is written in C as a Ruby extension.

## Requirements

- Ruby 2.5 or higher

## Installation

    gem install chess

## Usage

```ruby
require 'chess'

g = Chess::Game.new
until g.over?
  begin
    print "Give me a #{g.active_player} move: "
    input = gets.chop
    break if input == 'quit'
    g << input
    puts g
    puts g.moves.last
  rescue Chess::IllegalMoveError => e
    puts 'Illegal move!'
  end
end
puts g.status
```

**Documentation** is available **[here](http://pioz.github.io/chess)**.

## Questions or problems?

If you have any issues please add an [issue on
GitHub](https://github.com/pioz/chess/issues) or fork the project and send a
pull request.

## Copyright

Copyright (c) 2021 [Enrico Pilotto (@pioz)](https://github.com/pioz). See
[LICENSE](https://github.com/pioz/chess/blob/master/LICENSE) for details.

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
chess-0.3.6 README.md
chess-0.3.5 README.md
chess-0.3.4 README.md
chess-0.3.3 README.md