BikeControl (SwiftControl)
使用 Zwift Click、Zwift Play、Shimano Di2,或任何藍牙控制器搭配 MyWhoosh、Rouvy、Zwift 等。可於 iOS、Android、Windows 與 macOS 免費試用。
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證App to track all of the group wagers for CFB/NFL
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
A private web app for a friend group's weekly football betting league. Members submit picks on college football and NFL games each week, compete on a live leaderboard, and track performance over a full season.檢視完整 README ↗A private web app for a friend group's weekly football betting league. Members submit picks on college football and NFL games each week, compete on a live leaderboard, and track performance over a full season.
A lock's weight is its weight in games as well as in points — the league reads the record, not the point total, so a lock has to show up in the W‑L.
| Result | Regular Pick | Lock of the Week | Lock of the Year |
|---|---|---|---|
| Win | +1 · 1 W | +2 · 2 W | +7 · 7 W |
| Push | 0 · 1 P | 0 · 1 P | 0 · 1 P |
| Loss | −1 · 1 L | −2 · 2 L | −7 · 7 L |
So a member who goes 2–3 on the week with the LOTW among the losses reads 2–4; with the LOTY among them, 2–9. A push is a no‑action and stays one row however it was locked.
One lock per week, one LOTY per season. A LOTY stands in place of that week's LOTW rather than sitting beside it — spend it in week 4 and you have no separate LOTW that week.
Forfeit penalty: −1 point per pick slot not filled by week close (e.g., if 10 picks are required and you submit 8, you lose 2 points).
LOTW missing penalty: −1 point if no Lock of the Week is designated before the week closes.
| Layer | Tool | Why |
|---|---|---|
| Frontend | Next.js 14+ | React framework, works as a mobile PWA, includes API routes |
| Database & Auth | Supabase | Postgres, magic link login, real-time updates, row-level security |
| Schedule sync | Python script (GitHub Actions) | Pulls CFB + NFL schedules weekly from free public APIs |
| Deployment | Vercel | Zero-config Next.js hosting, free tier |
External APIs (free):
betting-site/
├── openspec/
│ └── changes/
│ └── betting-tracker/
│ ├── proposal.md # What we're building and why
│ └── specs/
│ ├── member-auth/ # Login, roles, invites
│ ├── game-schedule-sync/ # API schedule pull
│ ├── pick-entry/ # Member pick submission
│ ├── pick-visibility/ # Blind picks + admin override
│ ├── scoring-engine/ # Point rules, forfeits, LOTW
│ ├── result-resolution/ # Admin enters game results
│ ├── leaderboard/ # Weekly + season standings
│ ├── historical-analytics/# All-time stats and trends
│ └── admin-management/ # Week setup, close-out, invites
└── README.md
Day 1 (this build):
Day 2 (planned):
The full behavioral specs for every feature live in openspec/changes/betting-tracker/specs/. Read those before writing any code — they define exactly what the system must do, including edge cases and admin workflows. The proposal at openspec/changes/betting-tracker/proposal.md explains the overall scope and the decisions made during planning.