OpenAthlete
AGPLv3 endurance training platform: EU-oriented hosting, transparent CTL/ATL/TSB logic in code, self-hosting, and full export. Built in Grenoble.
Live Philadelphia Phillies stats, standings, schedule, and odds.
Translation pending
Sports & fitnessTypeScript · JavaScriptGitHub @jpsavielloOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
A personal project — a stats site for the Philadelphia Phillies. Batting/pitching leaders, standings (with a real wild-card tiebreaker calculation), schedule with live odds, a daily AI-written beat report, an "on this day" historical card, pregame matchup previews, bullpen workload tracking, a live in-progress game strip, and a Claude-powered chat bot you can ask about the team. Built almost entirely with Claude Code.Read the full README ↗A personal project — a stats site for the Philadelphia Phillies. Batting/pitching leaders, standings (with a real wild-card tiebreaker calculation), schedule with live odds, a daily AI-written beat report, an "on this day" historical card, pregame matchup previews, bullpen workload tracking, a live in-progress game strip, and a Claude-powered chat bot you can ask about the team. Built almost entirely with Claude Code.
Live site: allthingsphils.com
server/ that holds all API keys and never exposes them to the clientRequires two servers running at once:
One env var is required before npm run dev will render anything: set VITE_LAUNCHDARKLY_CLIENT_SIDE_ID in a .env.local at the repo root. Without it the app throws on startup and shows a blank page — unlike the keys below, this one doesn't degrade gracefully.
npm install
npm --prefix server install
npm run dev:server # backend proxy on :8080 — needed for any data to load
npm run dev # frontend dev server with HMR (proxies /api to :8080)
Then open the URL Vite prints (typically http://localhost:5173).
Other commands:
npm run build # type-check then bundle (tsc -b && vite build)
npm run lint # Oxlint
npm run preview # serve the production build locally
Optional local env vars (.env.local, gitignored) unlock extra features — the app degrades gracefully without them:
| Var | Enables |
|---|---|
ODDS_API_KEY | Betting odds on the Schedule tab |
ANTHROPIC_API_KEY | The chat bot |
DATABASE_URL | Sign-in, favorites, profiles |
SENDGRID_API_KEY | Sending the daily email digest |
CRON_SECRET | Authenticating the /api/notifications/daily cron route |
No automated test runner is configured; features are verified with a Playwright-based browser-testing workflow instead.
Runs in two places simultaneously:
developpipeline.sh; also runs Prometheus/Grafana monitoring