Personal poker tracker: Go + React + PostgreSQL PWA for tracking home sessions and poker trips with AI-powered schedule research. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2.7 KiB
2.7 KiB
🃏 PokerTrip
Personal poker tracker for tournament players. Track ad-hoc home sessions, plan poker trips with AI-powered schedule research, and analyze your game with real data.
What It Does
- Home tracking — Log tournament sessions at your local venues with quick entry and smart defaults
- Trip planning — Create poker trips with budgets, tournament schedules, and venue info
- AI research — Give the app a location and dates, it searches the web and builds your trip schedule (bring your own OpenRouter/Requesty API key)
- Tournament snapshots — Snap the tournament clock screen, AI extracts level/blinds/players, you add your stack — track your trajectory over time
- Tilt guard — Re-entry prompts show you the math: BBs you'll get, total invested, break-even needed
- Stats & analysis — Filter by venue, buyin range, dates, game type. Compare late reg vs. on time, re-entry ROI, stack trajectories
Stack
| Layer | Tech |
|---|---|
| Backend | Go, Chi, pgx, sqlc, River (job queue) |
| Frontend | React, TypeScript, Vite, Tailwind (Catppuccin Mocha) |
| Database | PostgreSQL |
| AI | OpenAI-compatible API (OpenRouter / Requesty) |
| Search | Self-hosted SearXNG |
| Deploy | Single Go binary with embedded frontend |
Getting Started
Prerequisites
- Go 1.22+
- Node.js 20+
- PostgreSQL 16+
- SearXNG instance (for AI research web search)
Setup
# Clone
git clone ssh://git@10.5.0.14:2222/mikkel/pokertrip.git
cd pokertrip
# Configure
cp .env.example .env
# Edit .env with your database credentials and JWT secret
# Database migrations
make migrate
# Development
make dev
Build & Deploy
# Build single binary (Go + embedded React frontend)
make build
# Run
./pokertrip
Project Structure
pokertrip/
├── cmd/server/ Go entrypoint
├── internal/
│ ├── api/ HTTP handlers + middleware
│ ├── db/ Migrations + sqlc queries
│ ├── jobs/ River workers (research, scraping, OCR)
│ ├── ai/ OpenAI-compatible client + tools
│ ├── storage/ File upload (local fs, swappable to S3)
│ └── config/ Environment config
├── frontend/ React + Vite + Tailwind
├── docs/ Design specs + reference files
├── .env.example Environment template
├── Makefile Dev/build/migrate commands
└── Dockerfile Container deployment
Design
See docs/2026-03-18-pokertrip-design.md for the full design spec.
License
Private — personal project.