Project Overview

LLM Poker Arena blends traditional Texas Hold'em mechanics with conversational AI opponents. The app pairs a PokerKit rules engine with Gemini and Claude personas so players can challenge distinct styles—or watch the models battle each other and narrate their table talk.

Key Features

  • Human vs. AI play: Sit down against themed LLM personas (Gemini, Claude) that shift strategy and tone based on their character.
  • AI vs. AI spectating: Launch head-to-head AI matches and follow decisions, bets, and table banter in real time.
  • Model showdowns: Pit different providers against each other to see how they handle imperfect-information play and bluffing.
  • Table talk and reasoning: Each LLM explains (or bluffs about) its moves, giving insight into its decision process.
  • Accurate game engine: PokerKit enforces betting rounds, blinds, hand evaluation, and showdown results.
  • Live action log: Streamed updates for chip stacks, bets, community cards, and winners keep the UI aligned with the engine.
  • Modern dark UI: React and TypeScript with glassmorphism styling, optimized for both desktop and mobile play.

Technology Stack

  • Frontend: React, TypeScript, modern CSS styling.
  • Backend: Python, FastAPI, PokerKit for deterministic hand logic.
  • AI Integration: Google Gemini and Anthropic Claude personas.
  • Deployment: Render-hosted frontend for easy access on any browser.

What I Built

  • Integrated PokerKit with LLM-driven personas so game state, betting, and table talk stay in sync.
  • Designed the React UI for spectating and playing, including live hand history and chip state updates.
  • Created persona prompts and routing that let players swap between aggressive, conservative, or playful AI styles.