Poker Engine

Horizontally scalable, immutable, and thread-safe poker library written in Ruby, utilizing the Redux design pattern and Persistent data structures.

Example

There is a simple console interface that you can run ./examples/simple-gameplay.rb and play against yourself!

Valid moves:

  • check
  • fold
  • call
  • raise [bet amount], example: raise 100

Documentation

You can think about the PokerEngine::Game like for a state machine. You can initiate it with .start and you can transition from one state in another with .next.

For more info check you can check the console example or the integration spec.

Setup

  1. Make sure you have Ruby and bundler installed

  2. Clone the repo

git clone [email protected]:kanevk/poker-engine.git
  1. Install the dependencies

    bundle
    
  2. Run tests

bundle exec rspec -fd