7f4838d032
- buildPreviewData.ts: precomputes from 150y of results → h2h.json (825 WC-team pairings, full records + recent meetings) + scorers.json (top-10 all-time scorers per team). Committed goalscorers.csv. - server/src/preview.ts: assembles MatchPreview / TeamProfile from three layers — historical (h2h, scorers), DB enrichment (ESPN form/lineups/venue), live model (W/D/L, xG, odds, Elo). /api/preview/:num + /api/team/:name. - Client: rich /match/:num page (model expectation, recent form chips, H2H record + recent meetings, lineups-or-key-players) and /team/:name profile (Elo, odds, standing, fixtures, all-time scorers). Match cards now link to previews; cross-linking between matches and teams. - Verified: Mexico-SA preview (81% W, 2-0, form, H2H 2-1-1, Borgetti 37) and Argentina profile (Messi 63) render; 22 tests pass; build clean. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
24 lines
593 B
Plaintext
24 lines
593 B
Plaintext
node_modules
|
|
dist
|
|
dev-dist
|
|
server/dist
|
|
server/node_modules
|
|
*.tsbuildinfo
|
|
.DS_Store
|
|
.env
|
|
.env.local
|
|
# local SQLite (dev); prod DB lives on the Docker volume
|
|
/data/cup26.db
|
|
/data/cup26.db-wal
|
|
/data/cup26.db-shm
|
|
# Generated build artifacts (reproduced by `npm run data:build`)
|
|
public/data/fixtures.json
|
|
public/data/ratings.json
|
|
public/data/h2h.json
|
|
public/data/scorers.json
|
|
public/pwa-192x192.png
|
|
public/pwa-512x512.png
|
|
public/favicon.svg
|
|
# Note: public/data/viz/*.json IS committed — it's processed from a fixed
|
|
# historical StatsBomb match, so we don't refetch 3.7MB of events at build time.
|