Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@poker-apprentice/hand-history-analyzer

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@poker-apprentice/hand-history-analyzer

Extract helpful statistics about a poker player's tendencies from a hand history

  • 1.3.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
5
increased by150%
Maintainers
1
Weekly downloads
 
Created
Source

Hand History Analyzer

Analyze hand histories from online poker sites in JavaScript & TypeScript. Works in conjunction with Hand History Parser.

Installation

Add @poker-apprentice/hand-history-analyzer as a dependency.

  • yarn:
    yarn add @poker-apprentice/hand-history-analyzer
    
  • npm:
    npm install @poker-apprentice/hand-history-analyzer --save
    

Usage

This package exports an analyzeHand function that can be used for analyzing hand histories that have been parsed by Hand History Parser's parseHand function. To use it, simply pass a parsed hand history to the function.

// assumes `handHistory` is an object returned by `parseHand`
const stats = analyzeHand(handHistory);
console.log(handHistory);

The value returned is represented as a HandHistoryStats type object. For example:

{
  "hand": {
    "totalPot": "57.4",
    "totalRake": "0.5",
  },
  "players": {
    "Mike": {
      "aggressiveActionCount": 0,
      "bountiesWon": "0",
      "streets": {
        "flop": {
          "betCount": 1,
          "bets": {},
          "callCount": 0,
          "checkCount": 0,
          "foldCount": 0,
          "raiseCount": 0,
        },
        "preflop": {
          "betCount": 0,
          "bets": {
            "2": 1,
          },
          "callCount": 0,
          "checkCount": 0,
          "foldCount": 0,
          "raiseCount": 1,
        },
        "turn": {
          "betCount": 1,
          "bets": {},
          "callCount": 0,
          "checkCount": 0,
          "foldCount": 0,
          "raiseCount": 0,
        },
      },
      "totalActionCount": 3,
      "totalAwarded": "56.9",
      "totalContributed": "27.45",
      "totalRakeContributed": "0.5",
      "totalWon": "29.45",
      "tournamentPlacementPrize": "0",
      "vpip": true,
      "wentToShowdown": true,
    },
  },
}

For anonymous poker sites (i.e.: sites that don't display usernames or otherwise obfuscate player information while playing), only the "hero" will be included in the players object included in the return value. For all other sites, the players object will include all players who were involved in the hand.

For insight into the intention of each key in the return value, refer to the TypeScript types.

Contributing

If you'd like to fix a bug, add a feature, improve the documentation, or anything else to better this library, pull requests are welcomed!

  1. Clone the repository:
    git clone git@github.com:poker-apprentice/hand-history-analyzer.git
    
  2. Install dependencies:
    yarn install
    
  3. Include tests for your changes, and open a pull request.

If you are interested in contributing, but you are stuck or lost at any point in your efforts, please reach out for help!

Keywords

FAQs

Package last updated on 04 Dec 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc