BikeControl (SwiftControl)
使用 Zwift Click、Zwift Play、Shimano Di2 或任何藍牙控制器,搭配 MyWhoosh、Rouvy、Zwift 等。iOS、Android、Windows、macOS 均可免費試用。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
A football prediction and betting-analysis platform built for the Nigerian market.
Real fixtures, real live scores, and a statistical model fitted on actual completed
matches — no placeholder games, no invented picks.
Most football tipster sites hand you a selection and ask you to trust it. This one
computes probabilities from a published method and shows you the sample size behind
every number, including when that sample is too thin to say anything at all.查看完整 README ↗A football prediction and betting-analysis platform built for the Nigerian market. Real fixtures, real live scores, and a statistical model fitted on actual completed matches — no placeholder games, no invented picks.
Most football tipster sites hand you a selection and ask you to trust it. This one computes probabilities from a published method and shows you the sample size behind every number, including when that sample is too thin to say anything at all.
npm install
npm run dev
Open http://localhost:3000. No API key is required — the app falls back to TheSportsDB's public key, which returns real live scores and real fixtures. See Data providers for lifting the coverage limits.
npm run build # production build
npm test # unit tests for the model, odds and staking maths
npm run lint
npm run smoke # hit the live feeds and print what comes back
Every fixture, scoreline and result comes from a live provider. Nothing is generated or seeded. Adapters are merged rather than ranked: the same fixture from two sources is de-duplicated on the club pair and kickoff day, the richer record wins, and gaps are filled from the other.
| Provider | Env var | Coverage | Free tier |
|---|---|---|---|
| football-data.org | FOOTBALL_DATA_API_KEY | Top European competitions, untruncated result sets. Recommended. | 10 req/min |
| API-Football | API_FOOTBALL_KEY | Widest coverage — the only one carrying NPFL and CAF properly | 100 req/day |
| TheSportsDB | THESPORTSDB_API_KEY | Used automatically with the public key when nothing else is set | Public key caps list endpoints at a few rows |
Copy .env.example to .env.local and fill in whichever you have. With none set,
the app runs on the shared public key and says so in the interface — live scores
stay complete, but fixture lists are capped upstream.
An optional ANTHROPIC_API_KEY upgrades the written match analysis from the
deterministic generator to Claude. Claude is given the computed numbers and asked
to explain them; it is never asked to predict anything, and the deterministic
version is used whenever the call fails.
For a fixture between home side i and away side j:
λ = exp(intercept + attack_i − defence_j + homeAdvantage) home goals
μ = exp(intercept + attack_j − defence_i) away goals
Ratings are fitted by weighted maximum likelihood using a diagonal Newton step. The log-likelihood of a Poisson model with a log link is concave, and the L2 penalty makes it strictly concave, so the optimum is unique.
2026-2027 and 2026).A prediction is only published as a pick when the history behind it supports one. Below 15 completed matches in the competition, or fewer than 3 appearances for either club, the model output is still shown — with an explicit warning — and no selection is offered. Fixtures in that state are listed separately on the predictions page rather than quietly mixed in.
The model knows results. It does not know about suspensions, injuries, midweek fixture congestion or a waterlogged pitch. And a probability is not a forecast: a 65% home win will be wrong about one time in three, which is the model working correctly rather than failing.
src/
app/
(app)/ live, fixtures, predictions, match/[id], trends, slip, content pages
api/ live, fixtures, match/[id], trends, health
components/
landing/ hero, marquee, feature and pricing sections
match/ cards, market panels, value calculator, slip
ui/ design-system primitives
lib/
providers/ three adapters, resolver, TTL cache with request coalescing
model/ the prediction engine — fitting, inference, pricing
ai/ analyst with deterministic fallback
service.ts the seam the pages and API routes share
Provider responses are cached in-process with TTLs tuned to each feed's rate limit, and concurrent requests for the same key are coalesced so a cold cache under load produces one upstream call, not many.
npm test
Covers the scoreline distribution and its normalisation, the Dixon-Coles correction, market coherence (1X2 partitions the sample space; over and under are complementary at every line), recovery of known team strengths from simulated seasons, the score equations at convergence, margin removal, Kelly capping and accumulator maths.
Sports betting in Nigeria is regulated and restricted to adults 18 and over. This project is an analytics tool: it does not take bets or hold funds. Predictions are statistical estimates, not certainties.
Provided as-is. Match data belongs to the respective providers and is subject to their terms.