BikeControl (SwiftControl)
使用 Zwift Click、Zwift Play、Shimano Di2 或任何藍牙控制器,搭配 MyWhoosh、Rouvy、Zwift 等。iOS、Android、Windows、macOS 均可免費試用。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Quick and easy fpl helper
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
A blunt, no-fluff Fantasy Premier League price tracker. Every player's price,
ownership, and price movement in one sortable, filterable table — plus a
risers/fallers section so you know who's actually worth transferring in
before the price ticks up again.
Data comes straight from the official FPL API — bootstrap-static for
players/teams and fixtures for upcoming fixture difficulty. No account, no
API key needed — both are public endpoints. Player photos come from the
official FPL image CDN (resources.premierleague.com); if a photo 404s the
UI falls back to a plain initials avatar.查看完整 README ↗A blunt, no-fluff Fantasy Premier League price tracker. Every player's price, ownership, and price movement in one sortable, filterable table — plus a risers/fallers section so you know who's actually worth transferring in before the price ticks up again.
Data comes straight from the official FPL API — bootstrap-static for
players/teams and fixtures for upcoming fixture difficulty. No account, no
API key needed — both are public endpoints. Player photos come from the
official FPL image CDN (resources.premierleague.com); if a photo 404s the
UI falls back to a plain initials avatar.
data/history.json, so the site can
report price moves it has actually witnessed (and power the sparklines),
not just what the FPL API itself reports.npm install
npm run dev
Open http://localhost:3000.
npm run refresh
This fetches the current FPL data, writes data/latest.json, and appends a
snapshot to data/history.json. In production this runs automatically —
see below.
.github/workflows/refresh-data.yml runs npm run refresh every 3 hours
via GitHub Actions. If any player's price has changed since the last
snapshot, it commits the updated data/ files back to the repository. Since
Vercel auto-deploys on every push, this also keeps the live site's build-time
data fresh.
You can also trigger it manually from the Actions tab (workflow_dispatch)
if you want a snapshot right now.
Snapshot history is capped at 240 entries (roughly a month at the default
3-hour cadence) so data/history.json doesn't grow without bound.
refresh-data.yml already
requests contents: write permission, which is enabled by default for
most repos.No environment variables are required. FPL_BOOTSTRAP_URL and
FPL_FIXTURES_URL can be set to override the FPL API URLs (useful for
testing against a mock endpoint).
app/
page.tsx Home page — fetches live data, renders everything
api/players/route.ts JSON API exposing the same player data
api/player-history/[id]/route.ts One player's price history (for sparklines)
lib/
fpl-types.ts Shared types for the FPL API + our normalized data
normalize.ts Raw FPL payload -> normalized Player[]
live.ts Live fetch from the FPL API (players + fixtures, 5 min cache)
fixtures.ts Builds each team's next-3-fixtures difficulty run
history.ts Reads our own committed price-snapshot history
copy.ts Blunt one-liners for the risers/fallers cards
components/
TopPlayers.tsx Top 15 sortable table with sparklines
RisersFallers.tsx Recent price movers
PlayerLookup.tsx Search-any-player section
SquadBuilder.tsx My team: pitch view / list view squad builder
PlayerAutocomplete.tsx Shared search input used by the above
PlayerDetailCard.tsx Shared player summary card (photo, price, sparkline)
PlayerPhoto.tsx Player photo with initials fallback
FixtureChips.tsx Small difficulty-coloured fixture chips
Sparkline.tsx Inline SVG price sparkline
scripts/
fetch-snapshot.ts Snapshot job run by the scheduled workflow
data/
history.json Committed price history (bounded, pruned)
.github/workflows/
refresh-data.yml Scheduled price snapshot job
ci.yml Lint + build on push/PR
Not affiliated with the Premier League or Fantasy Premier League.