refactor: replace hardcoded hex colors with theme tokens, move data/ to root

- Add --color-green-mid token (#4a7a55) to @theme for dimmer stat values
- Replace all text-[#hex]/bg-[#hex] arbitrary values with named tokens:
  text-green, text-green-light, text-green-sec, text-green-muted,
  text-green-dark, text-green-mid, text-text, bg-card, bg-bg, border-border
- Replace rgba(34,197,94,X) inline styles with bg-green/X opacity modifiers
- Convert single-prop style={{ borderColor/background }} to className
- Fix SVG stroke="#dff5e8" → stroke="currentColor"
- Use CSS variables in globals.css base styles (background-color, color)
- Move app/data/wikipedia/ → data/ (project root, not inside Next.js app dir)
- Update Dockerfile, seed.ts, scrape-wikipedia.ts paths accordingly
- Remove unused app/data/world_cup.csv

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-15 18:08:23 +02:00
parent 187ee2e312
commit b141356247
125 changed files with 279 additions and 322 deletions
+76
View File
@@ -0,0 +1,76 @@
{
"groups": [
{
"name": "Group A",
"teams": [
"Brazil",
"Scotland",
"Morocco",
"Norway"
]
},
{
"name": "Group B",
"teams": [
"Italy",
"Chile",
"Cameroon",
"Austria"
]
},
{
"name": "Group C",
"teams": [
"Saudi Arabia",
"Denmark",
"France",
"South Africa"
]
},
{
"name": "Group D",
"teams": [
"Paraguay",
"Bulgaria",
"Spain",
"Nigeria"
]
},
{
"name": "Group E",
"teams": [
"South Korea",
"Mexico",
"Netherlands",
"Belgium"
]
},
{
"name": "Group F",
"teams": [
"FR Yugoslavia",
"Iran",
"Germany",
"United States"
]
},
{
"name": "Group G",
"teams": [
"England",
"Tunisia",
"Romania",
"Colombia"
]
},
{
"name": "Group H",
"teams": [
"Argentina",
"Japan",
"Jamaica",
"Croatia"
]
}
]
}
File diff suppressed because it is too large Load Diff
+8
View File
@@ -0,0 +1,8 @@
{
"host": "France",
"teams_count": 32,
"winner": "France",
"runner_up": "Brazil",
"third_place": "Croatia",
"fourth_place": "Netherlands"
}
File diff suppressed because it is too large Load Diff
+48
View File
@@ -0,0 +1,48 @@
{
"stadiums": [
{
"name": "Stade Vélodrome",
"city": "Marseille"
},
{
"name": "Parc des Princes",
"city": "Paris"
},
{
"name": "Stade Félix-Bollaert",
"city": "Lens"
},
{
"name": "Stade de France",
"city": "Saint-Denis"
},
{
"name": "Stade de la Mosson",
"city": "Montpellier"
},
{
"name": "Stade de Toulouse",
"city": "Toulouse"
},
{
"name": "Parc Lescure",
"city": "Bordeaux"
},
{
"name": "Stade Geoffroy-Guichard",
"city": "Saint-Étienne"
},
{
"name": "Stade de la Beaujoire",
"city": "Nantes"
},
{
"name": "Stade de Gerland",
"city": "Lyon"
},
{
"name": "Stade Gerland",
"city": "Lyon"
}
]
}