Expand description
A toolkit library for playing and developing card games (like poker and variants thereof), interactive applications, agentic strategies, and theoretical models like GTO solving.
If you just want to play poker, you can use these programs to get started instantly:
- dealrs::texas::cli: a program that plays Texas Holdem poker with a few simple agents
If you want to develop your own application of a common game variant, you can use the high level modules to get started:
- dealrs::texas: a framework for working with the Texas Holdem poker variant, including game state management, agentic strategies, and
In addition (unlike a lot of poker libraries), this crate includes modular lower level utility modules for building other game variants and conducting research:
- dealrs::deck: basic definitions of the standard deck of cards, and utilities for working with them
- dealrs::hand: standard hands of poker, and traits for working with them
- RefHand5: a reference implementation for determining the best 5-card hand from a given set of cards, which is pretty fast and used for verification
- dealrs::betting: common utilities for betting, chips, and sizing policies. These are generally game-agnostic, and thus can be reused in different contexts.
Even lower level, there are exposed utilities for “pure math” behind the scenes. These modules are generally unstable and subject to change, so use them at your own risk:
- dealrs::combrs: combinatorial utilities used for LUT generation, indexing, and decoding
Modules§
- betting
- Betting policies and utilities for poker games, i.e. for chip value definitions, parsing, and sanitization.
- combrs
- Combinatorial encoding and decoding utilities, such as binomial coefficients and multiset encoding/decoding to flattened index spaces
- deck
- Defines the standard deck of cards and masks for working with unordered sets of them
- hand
- Hand detection, evaluation, and ranking for standard 5-cards-or-fewer poker hands. These are sufficient for standard game variants like Texas Holdem, Omaha Holdem, and 5/7-card Stud/Draw.
- texas
- Game engine for Texas Holdem poker, as well as agentic interfaces for playing the game.
Functions§
- rng_
from_ seed - Construct a random number generator from a seed string, or use a default-initialized one if no seed is provided