-
1ebe4613ce
docs: rewrite README with accurate data pipeline documentation
main
valknar
2026-06-16 07:50:12 +02:00
-
c721062560
fix: anchor scroll — double-rAF timing + scroll-mt-20 on match cards
valknar
2026-06-16 01:52:20 +02:00
-
1fc9c59367
fix: sort recentMatches by UTC kickoff time, not ID
valknar
2026-06-16 01:44:38 +02:00
-
7fb54683e4
fix: mark sitemap as dynamic to avoid DB query at build time
valknar
2026-06-15 20:25:46 +02:00
-
a494c80a76
feat: SEO enhancements — server metadata, sitemap, robots, dynamic base URL
valknar
2026-06-15 20:18:36 +02:00
-
2bd32daae1
fix: show 0-0 for live matches with no score data; exclude live from recent
valknar
2026-06-15 20:00:07 +02:00
-
71e7e47aca
feat: show all groups including unplayed, add upcoming matches per group
valknar
2026-06-15 19:47:52 +02:00
-
76425e7f76
fix: sort upcoming fixtures by UTC kickoff time, not venue local HH:MM
valknar
2026-06-15 19:37:41 +02:00
-
015f6c2ef3
fix: derive upcoming fixture day label from computed local kickoff time
valknar
2026-06-15 19:34:20 +02:00
-
47eb5092e9
fix: show proper date and local kickoff time in Upcoming Fixtures
valknar
2026-06-15 19:28:20 +02:00
-
7e4bf2d07c
fix: retry failed group subpages, add rate-limit detection in scraper
valknar
2026-06-15 18:44:54 +02:00
-
d37ebe201e
refactor: consolidate data/ into single root directory, fix historical player names
valknar
2026-06-15 18:27:35 +02:00
-
9ce2a4e27c
fix: use full player names from title attr, preserve UTC offset in match times
valknar
2026-06-15 18:14:53 +02:00
-
b141356247
refactor: replace hardcoded hex colors with theme tokens, move data/ to root
valknar
2026-06-15 18:08:23 +02:00
-
187ee2e312
fix: parse Wikipedia 12h time format and sort upcoming matches with NULLS LAST
valknar
2026-06-15 17:50:30 +02:00
-
42063cdfda
fix: extend group heading regex from [a-h] to [a-z] for 2026 Groups I-L
valknar
2026-06-15 17:39:38 +02:00
-
61c3c3f6cf
fix: add --force flag to sync to clear 2026 data and orphaned teams
valknar
2026-06-15 17:37:15 +02:00
-
b832b62f5e
fix: normalize Bosnia & Herzegovina and USA team name variants
valknar
2026-06-15 17:33:05 +02:00
-
f885e4312c
refactor: extract lib/wiki-scraper.ts, make scraper composable, sync from Wikipedia
valknar
2026-06-15 17:23:17 +02:00
-
d1171267a8
feat: scrape tournament meta from Wikipedia, drop world_cup.csv
valknar
2026-06-15 17:09:45 +02:00
-
ff4989f39f
refactor: rename data/openfootball → data/wikipedia, drop data/kaggle
valknar
2026-06-15 16:10:21 +02:00
-
5dcd22ad22
feat: replace Kaggle CSV with Wikipedia scraper for historical match data
valknar
2026-06-15 11:39:53 +02:00
-
83b1ad3e35
fix: atomic goal updates in sync — transaction + bulk INSERT
valknar
2026-06-15 09:56:43 +02:00
-
2c981dc6c0
fix: add non-null assertion for DATABASE_URL in sync.ts closure
valknar
2026-06-15 08:56:11 +02:00
-
9f8f56ac4e
fix: remove redundant DDL from sync.ts and validate DATABASE_URL
valknar
2026-06-15 08:53:20 +02:00
-
de03dfeadb
fix: suppress Apollo cache warnings for Match.team1 / Match.team2
valknar
2026-06-14 22:18:47 +02:00
-
11a89204af
feat: add Umami analytics via UMAMI_ID / UMAMI_SRC env vars
valknar
2026-06-14 22:04:41 +02:00
-
767236739b
feat: add football net background pattern and glass card styling
valknar
2026-06-14 22:01:40 +02:00
-
479c3d93e4
fix: constrain nav and footer content to max-w-[1200px] like main content
valknar
2026-06-14 21:46:33 +02:00
-
ae46cbc44e
feat: add footer with copyright and dev.pivoine.art link
valknar
2026-06-14 21:44:58 +02:00
-
1c73baf894
fix: remove unused \$name variable from PlayerGoalsByYear query
valknar
2026-06-14 21:41:42 +02:00
-
0b26c59ceb
fix: regenerate pnpm-lock.yaml after heroicons install, remove npm lockfile
valknar
2026-06-14 21:34:49 +02:00
-
3cb619d7fa
fix: include today's completed matches in recentMatches
valknar
2026-06-14 21:26:25 +02:00
-
c3ddb6e874
feat: replace emoji icons with Heroicons SVG set
valknar
2026-06-14 21:23:38 +02:00
-
a6111d7beb
fix: resolve Apollo cache warning for TeamStats embedded objects
valknar
2026-06-14 21:12:13 +02:00
-
6e6e819718
fix: scope team page scorers by teamId instead of filtering global top 200
valknar
2026-06-14 21:11:16 +02:00
-
9b8e266f88
feat: team pages with match/tournament history, mobile padding fixes, linked scorers and nations
valknar
2026-06-14 21:07:56 +02:00
-
f1b5328b78
fix: switch team table and confederation stats to proper table layout
valknar
2026-06-14 20:26:49 +02:00
-
e5625bf759
fix: minimize favicon margins — trophy fills 96% of height
valknar
2026-06-14 20:23:03 +02:00
-
9077f3ec8b
fix: remove background rect from favicon, transparent icons
valknar
2026-06-14 20:21:13 +02:00
-
2b18fa1ebb
fix: rebuild favicon with inlined vector paths, no image-embed blurriness
valknar
2026-06-14 20:20:21 +02:00
-
020fbd5bdf
fix: rebuild favicon as proper square SVG with dark background
valknar
2026-06-14 20:17:08 +02:00
-
238bbabbdb
feat: add proper favicon, apple-touch-icon, webmanifest and PWA icons
valknar
2026-06-14 20:13:52 +02:00
-
886523173b
fix: use grid layout for full match card so teams stay in one row on mobile
valknar
2026-06-14 20:10:55 +02:00
-
ee1acb6e45
feat: add mobile hamburger menu with slide-down panel
valknar
2026-06-14 20:08:03 +02:00
-
05a75fffca
fix: increase trophy icon height to 36px
valknar
2026-06-14 20:02:39 +02:00
-
ffa8ec16c8
fix: constrain trophy icon height to 22px to match nav proportions
valknar
2026-06-14 20:02:16 +02:00
-
c9e1beafc7
feat: replace hand-drawn ball SVG with FIFA trophy icon in nav
valknar
2026-06-14 20:01:28 +02:00
-
3eb36061e0
feat: replace inline SVG icon with FIFA World Cup trophy icon
valknar
2026-06-14 20:00:17 +02:00
-
52b8348203
feat: add 404 page matching app design system
valknar
2026-06-14 19:54:14 +02:00
-
85c40cf56e
fix: update document.title on every page via useEffect
valknar
2026-06-14 19:52:59 +02:00
-
32d33d2f92
fix: add data-scroll-behavior="smooth" to suppress Next.js warning
valknar
2026-06-14 19:45:01 +02:00
-
2e284ec49e
fix: show penalty score as headline result, FT score as footnote
valknar
2026-06-14 19:39:01 +02:00
-
25e440f5a4
fix: scroll to hash anchor after Apollo data loads on tournament page
valknar
2026-06-14 19:36:08 +02:00
-
e4d9772c47
fix: add missing team name variants and defunct nations to iso-codes
valknar
2026-06-14 19:33:01 +02:00
-
c98d45da79
fix: add Türkiye alias to iso-codes (openfootball uses new name)
valknar
2026-06-14 19:31:13 +02:00
-
050f661e6d
fix: match placeholder badge dimensions to flag-icons flag size
valknar
2026-06-14 19:28:12 +02:00
-
39985a5c71
fix: override stale DB iso2 with registry for known defunct nations
valknar
2026-06-14 19:25:55 +02:00
-
b942ae7c8f
fix: show placeholder badge for defunct nations with no flag-icons code
valknar
2026-06-14 19:21:38 +02:00
-
3955c7492b
feat: replace historical sync with Kaggle seed for complete 1930-2022 goal data
valknar
2026-06-14 18:43:43 +02:00
-
191888225f
fix: delete goals once per match instead of once per team in syncGoals()
valknar
2026-06-14 17:38:35 +02:00
-
c418a51f08
chore: remove flags from location text on homepage and history
valknar
2026-06-14 17:30:12 +02:00
-
78340bd2db
fix: convert match local time to UTC in isLive()
valknar
2026-06-14 17:24:59 +02:00
-
42019e5035
fix: normalize West Germany → Germany in sync script and repair existing data
valknar
2026-06-14 17:12:06 +02:00
-
48f7e71a8e
fix: map total_goals → totalGoals in confederationStats resolver
valknar
2026-06-14 17:06:22 +02:00
-
9926673ffd
fix: add limit arg to Tournament.topScorers in GraphQL schema
valknar
2026-06-14 17:05:31 +02:00
-
0eb0fb5ee4
fix: use percent-encoded DATABASE_URL instead of split DB_PASSWORD trick
valknar
2026-06-14 17:01:06 +02:00
-
2b22f504cf
fix: pass DB_PASSWORD to postgres client in sync script
valknar
2026-06-14 16:43:50 +02:00
-
9a87e9dde3
fix: proper Tailwind v4 CSS structure in globals.css
valknar
2026-06-14 16:37:59 +02:00
-
ea7f0551f0
fix: replace recursive ** globs in @source with explicit per-directory paths
valknar
2026-06-14 16:26:25 +02:00
-
30d30f68fb
fix: add @source directives so Tailwind v4 scans all component files
valknar
2026-06-14 16:22:13 +02:00
-
0cabcf7438
fix: separate DB_PASSWORD from DATABASE_URL to handle special chars
valknar
2026-06-14 15:58:48 +02:00
-
29ef528d67
chore: update DATABASE_URL hostname in .env.example to worldcup_db
valknar
2026-06-14 15:41:17 +02:00
-
bec5cf28e6
chore: set explicit container names and drop no-index middleware
valknar
2026-06-14 15:40:12 +02:00
-
58b4114159
feat: initial commit — World Cup stats app with pnpm, Traefik, Docker
valknar
2026-06-14 15:36:44 +02:00