Tilted

Tilted is a lightweight, open-source Python package with a simple interface for poker hand evaluation & comparison.

Installation

With Poetry:

poetry add tilted

With Pip:

pip install tilted

Basic Usage

Tilted can be used to evaluate and compare 5-card poker hands.

Hand Evaluation

To evaluate an unknown hand:

from tilted import Card, CardRank, CardSuit, Hand


unknown_hand = Hand([
  Card(CardRank.TEN, CardSuit.SPADES),
  Card(CardRank.JACK, CardSuit.SPADES),
  Card(CardRank.QUEEN, CardSuit.SPADES),
  Card(CardRank.KING, CardSuit.SPADES),
  Card(CardRank.ACE, CardSuit.SPADES),
])

unknown_hand.hand_rank  # <HandRank.ROYAL_FLUSH: 10>

Hand Comparison

To compare two hands:

from tilted import Card, CardRank, CardSuit, Hand


royal_flush = Hand([
  Card(CardRank.TEN, CardSuit.SPADES),
  Card(CardRank.JACK, CardSuit.SPADES),
  Card(CardRank.QUEEN, CardSuit.SPADES),
  Card(CardRank.KING, CardSuit.SPADES),
  Card(CardRank.ACE, CardSuit.SPADES),
])

straight_flush = Hand([
  Card(CardRank.NINE, CardSuit.HEARTS),
  Card(CardRank.TEN, CardSuit.HEARTS),
  Card(CardRank.JACK, CardSuit.HEARTS),
  Card(CardRank.QUEEN, CardSuit.HEARTS),
  Card(CardRank.KING, CardSuit.HEARTS),
])

royal_flush > straight_flush  # True

Roadmap

  • 5-card hand comparison
  • Deck support
  • Board & dealing (Flop, Turn, River)
  • Full board & hole card evaluation
  • Expand beyond Texas Hold ‘Em (Pot Limit Omaha)

GitHub

View Github