尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Classroom chess tournament app — swiss pairing, live boards, casual 1v1
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗A big-screen classroom chess tournament for ungdomsskole. A live Swiss league
(3–7 rounds) with an optional knockout playoff, plus a knockout-only "cup"
format. Students join with a PIN; the organiser runs a projector "storskjerm" (big screen) —
lobby, live standings, bracket, podium, full results with print/PDF export,
and a private note-to-self. Outside a tournament, /solo has an 18-lesson
"Lær sjakk" coach curriculum plus a bot to practice against, and /versus is
a same-device two-player board with no tournament at all. Part of the
SundaySuite, deployed at chess.sundaysuite.app.
The chess rules are server-authoritative: the client only sends a move
intent; the server replays it with chess.js against the stored FEN, commits
atomically, and broadcasts the new position. Whose turn it is is server state,
never negotiated between clients.
/api/*)npm install
cp .env.example .env.local # fill in Supabase keys (see docs/RIG-TEST.md)
npm run dev # http://localhost:3000
Quality gate (run before committing):
npm run test # Vitest — pure logic + route integration
npm run typecheck # tsc --noEmit
npm run lint # eslint
npm run build # next build
lib/chess/ — validateMove (apply/legality), lastMovelib/tournament/ — pair (Swiss), score (Buchholz/standings), bracketlib/server/ — store (DB), league / playoff (engines), auth,
broadcast, gameEvents, httpapp/host/ — organiser: wizard, lobby, league board, bracket, podiumapp/play/ — student: join/resume, waiting room, playable boardsupabase/migrations/ — 0001_schema (tables + RLS), 0002_move_apply
(atomic apply_move / resolve_game RPCs)Phases 0–7 are code-complete with unit + route tests green and the app building. Live verification (realtime against a real Supabase project, a full two-browser game, the Cloudflare deploy) is the rig-test — see docs/RIG-TEST.md. Deploy steps in docs/DEPLOY.md; scope/decisions in docs/COMPLETION.md.