Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
poker hand evaluator
JavaScript
branch: master
Failed to load latest commit information.
data update 3 card evaluator to match 5 card hands
lib Evaluator 6 cards
test add tests, fix typos
.gitignore bump version
.travis.yml add travis
package.json bump version and fix readme
readme.md bump version and fix readme

readme.md

Poker Hand Evaluator

Poker hand evaluator using the Two Plus Two alogorithm and lookup table. The lookup table HandRanks.dat is included in the module.

It is capable of evaluating 7, 6, 5, and 3 card hands. The highest hand possible in a 3 card hand is 3 of a kind, straights & flushes do not apply to 3 cards.

Hands can be evaluated by comparing the handType then the handRank to determine the better hand.

This can evaluate about 22MM hands per second on a quad-core 2.7GHz Macbook Pro. Run the speedtest.js file under /test to try it.

to install:

npm install poker-evaluator

Usage:

var PokerEvaluator = require("poker-evaluator");

PokerEvaluator.evalHand(["As", "Ks", "Qs", "Js", "Ts", "3c", "5h"]);

//{ handType: 9,
//  handRank: 10,
//  value: 36874,
//  handName: 'straight flush' }

PokerEvaluator.evalHand(["As", "Ac", "Ad", "5d", "5s"]);

//{ handType: 7,
//  handRank: 148,
//  value: 28820,
//  handName: 'full house' }

PokerEvaluator.evalHand(["As", "Ac", "Qs"]);

//{ handType: 2,
//  handRank: 2761,
//  value: 10953,
//  handName: 'one pair' }
Something went wrong with that request. Please try again.