bj-architect
All projects
Real-time Blackjack strategy assistant. Optimal decision engine with session history.
The problem
Learning Blackjack basic strategy requires memorizing complex decision tables (hit/stand/double/split) for each hand combination and dealer visible card. Without guided practice, the learning curve is slow and expensive.
The solution
Assistant that shows the optimal play in real time for any possible combination. Decision engine based on standard basic strategy tables. Persistent session history to analyze which decisions were made vs. what was optimal.
Impact
- Optimal decision in < 50ms for any card combination
- Persistent session history with error analysis by hand type
- Strategy error reduction from ~30% to ~5% in practice sessions
$ bj-architect --hand="A,7" --dealer="6" Tu mano: A + 7 = soft 18 Dealer muestra: 6 ┌────────────────────────────────┐ │ DECISIÓN ÓPTIMA │ │ │ │ ▸ DOBLAR │ │ (double down) │ │ │ │ EV: +0.18 vs Stand: +0.12 │ └────────────────────────────────┘ sesión actual: 23 manos · 91% correcto
Stack
- SQLite + Drizzle ORM
- Single-user personal tool — SQLite is perfect; Drizzle gives type-safety without overhead
- Next.js 16
- Interactive app with reactive state; no external API or auth needed
- Next.js 16
- TypeScript
- SQLite
- Drizzle ORM