bawgle¶
Multiplayer Boggle you can self-host. One container, one port, no extra pieces.
-
Pull the image, set a password, open a browser. A room takes about 60 seconds to spin up.
-
Production compose, reverse-proxy templates (nginx, Caddy, Cloudflare Tunnel, Traefik), backups, retention, security.
-
Local setup, the three-watcher
pnpm devflow, scripts, repo layout, testing patterns. -
Admin dashboard, JSON API, structured event logs, counters, troubleshooting recipes.
-
Dense architectural brief for GPT / Claude / Cursor-style coding assistants. Protocol tables, state machine, intentional oddities.
-
Code, issues, releases. Image published to
ghcr.io/alifbae/bawgle.
What it is¶
- Real-time multiplayer over a single WebSocket.
- 4×4, 5×5, 6×6 boards. 60–300 second rounds. Standard Boggle dice.
- SQLite persistence for rooms, players, and completed rounds.
- Built-in admin dashboard at
/adminwith live metrics, room browser, and daily JSONL event logs. - Multi-arch container image (
amd64+arm64) published on every push tomain. - Zero external dependencies at runtime. Dictionary, admin UI, and SPA all ship in the image.
One-liner¶
bash
docker run -d \
-p 3001:3001 \
-v bawgle-data:/data \
-e BAWGLE_ADMIN_USER=admin \
-e BAWGLE_ADMIN_PASS=$(openssl rand -base64 24) \
--name bawgle \
ghcr.io/alifbae/bawgle:latest
Open http://localhost:3001, pick a name, share the ?room= URL.