mirror of
https://github.com/tiennm99/loto.git
synced 2026-10-14 20:17:28 +00:00
a59d857d0d098c586385497099c91095154531fc
- master board: 11x9 last-digit aligned (col 0 = 1-9, col 8 = 80-90); fixes missing ones-digit-9 row and aligns 1/11/21/.../81 horizontally - master board: each called cell shows 1-based draw order so host can glance across a winning row to verify "Kinh!" - player card: constraint-aware picker guarantees exactly 5 numbers per row AND per column (was loose weighted random allowing 4-6 per col) - player card: numbers within each column now placed ascending top-to-bottom per lô tô hội chợ tân tân convention
Lô tô
Bàn số của trò chơi "Lô tô" — SvelteKit app.
Two routes: / for players, /master for the host (quản trò) — calls
numbers, shows a tracking board, and has its own player card to play along.
See docs/ for architecture, code standards, and deployment.
Development
npm install
npm run dev
Inside code-server (reverse proxy)
cp .env.example .env.local
# edit .env.local: set CODESERVER_HOST and CODESERVER_PORT
npm run dev:codeserver
Open https://<CODESERVER_HOST>/absproxy/<CODESERVER_PORT>/.
Use /absproxy/{port}/, not /proxy/{port}/ — the latter strips the
path prefix and breaks the SvelteKit base path.
Build
npm run build # default — root basePath, for Cloudflare Pages
npm run build:gh # /loto basePath, for tiennm99.github.io/loto manual export
Static export to build/. Deployed to Cloudflare Pages from main
(set up via the CF dashboard — see docs/deployment-guide.md).
Description
Lô Tô (Vietnamese lottery bingo) number board — Next.js web app
Readme
4.2 MiB
0 Stars
1 Watchers
0 Forks
Languages
TypeScript
89.9%
CSS
8%
JavaScript
2.1%