Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions COPYRIGHT.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ The compilations are released under MIT. They consist of factual information col

- `matches.json`, `teams.json`, `standings.json`, `lineups.json`, `stats.json`, `venues.json` (names/schedule parts) — factual sports data retrieved from FIFA's publicly accessible API (api.fifa.com): fixtures, scores, officials, localized team/stadium names, world ranking. Facts as such are not copyrightable; the compilation here is our own. FIFA trademarks remain FIFA's property. If you redistribute this app publicly, review FIFA's terms of service yourself.
- `squads.json`, `squads/*.json` — squad facts (player names, shirt numbers, positions, birth dates, caps, goals, clubs, coaches) extracted from the Wikipedia article ["2026 FIFA World Cup squads"](https://en.wikipedia.org/wiki/2026_FIFA_World_Cup_squads). Wikipedia article text is CC BY-SA 4.0; only uncopyrightable facts are extracted (no prose is reproduced). Attribution is nevertheless given here.
- `player-photos.json` — a lookup of **official FIFA player headshot URLs** (`digitalhub.fifa.com`), retrieved from FIFA's public squad API. Only the URLs are stored (no image files are downloaded or redistributed); the app hot-links to FIFA's own image host at display time. The photographs remain FIFA's property — this project claims no rights to them. If you redistribute this app publicly, review FIFA's terms of service yourself.
- `probs.json` — win/draw/loss probabilities computed by our own Elo model over the [martj42/international_results](https://github.com/martj42/international_results) dataset (CC0 public domain). The model and output are MIT.
- `weather.json` — weather forecast data from [Open-Meteo](https://open-meteo.com), licensed CC BY 4.0. Attribution: "Weather data by Open-Meteo.com".
- `broadcasters.json` — compiled from public rights announcements; see embedded source URLs. Translations are original to this project (MIT).
Expand Down Expand Up @@ -50,6 +51,7 @@ The compilations are released under MIT. They consist of factual information col
| Source | License | Used for |
|---|---|---|
| FIFA public API (api.fifa.com) | facts; FIFA™ marks remain FIFA's | match and ranking facts |
| FIFA player headshots (digitalhub.fifa.com) | FIFA's property; hot-linked, not redistributed | official squad photos |
| Wikipedia | CC BY-SA 4.0 (text) | squad facts source |
| Open-Meteo | CC BY 4.0 | weather forecasts and geocoding |
| Natural Earth | public domain | map geometry |
Expand Down
10 changes: 6 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# [2026 World Cup Open Source Companion ⚽](https://26worldcup.github.io)

Clean and complete 2026 FIFA World Cup companion: schedule, groups, bracket, squads, venues, weather, where to watch, match win **probabilities** and tournament **forecast**, in 23 languages.
Clean and complete 2026 FIFA World Cup companion: schedule, groups, bracket, squads, venues, weather, where to watch, match win **probabilities**, tournament **forecast**, and live prediction-**market** odds, in 23 languages.

👉 **[Click me to use 2026 World Cup Open Source Companion now!](https://26worldcup.github.io)** ⚽ ([26worldcup.github.io](https://26worldcup.github.io))

Expand All @@ -23,7 +23,7 @@ README in [français](README.fr.md) · [中文](README.zh.md)
### 👕 Teams & players

- 🧢 **48 team pages**: live FIFA ranking, coach, group table, full fixtures, training base camp (with map + Google Maps links), official website, and Wikipedia links
- 👥 **Official 26-player squads**: numbers, positions, ages, caps, goals, clubs; every player links to their English Wikipedia article
- 👥 **Official 26-player squads**: official FIFA player headshots, numbers, positions, ages, caps, goals, clubs; every player links to their English Wikipedia article
- ⭐ **Favorites**: star the teams you follow and filter the schedule to them

### 🗺️ Venues & maps
Expand All @@ -39,6 +39,7 @@ README in [français](README.fr.md) · [中文](README.zh.md)

- 👟 **Golden-boot table** and tournament stats, updated throughout the competition
- 🎲 **Match probabilities & tournament forecast**: every fixture gets a win/draw/loss **probability** from an Elo model replayed over 49,000 historical internationals blended with the official FIFA ranking, and the **forecast** page lets you **simulate** the whole tournament (group tables, knockout bracket, extra time, penalty shoot-outs) 1 to 10,000 times, starting from now, the opening match, a date, or any match number, then shows not just each team's title odds but a full **outcome table**: how every team finishes its group, the round it bows out in, and its final placing, all the way to the trophy, like a fun **prediction** machine
- 💹 **Prediction market**: a **Market** tab with live title odds from [Polymarket](https://polymarket.com), the crowd's real-money bet on who lifts the trophy — each team's market-implied chance (normalized to 100%) shown right next to the model's own forecast for an at-a-glance market-vs-model comparison (informational only, not betting advice; availability varies by country)

### 🌍 Languages

Expand Down Expand Up @@ -67,10 +68,11 @@ All data comes from free, authoritative sources, with no API keys anywhere:

| Source | Provides |
|---|---|
| FIFA public API | fixtures, scores, line-ups, referees, localized names, world ranking |
| FIFA public API | fixtures, scores, line-ups, referees, localized names, world ranking, official player headshots |
| Wikipedia | official 26-player squads (numbers, caps, goals, clubs, coaches) |
| Open-Meteo | hourly stadium weather forecasts and base-camp geocoding |
| martj42/international_results (CC0) | historical results feeding the Elo win-probability model |
| Polymarket public API | live market-implied title odds shown on the **Market** tab |
| Hand-curated files | venues, broadcasters, base camps, climate normals, team colours |

**Automatic updates** (GitHub Actions, included in this repo):
Expand Down Expand Up @@ -203,4 +205,4 @@ src/ application code (pages, components, i18n, settings)

## 📄 License

Code and curated data: [MIT](LICENSE.md). Detailed third-party data and image licensing: [COPYRIGHT](COPYRIGHT.md). Data courtesy of FIFA's public API, Wikipedia, and Open-Meteo; verify broadcast rights with local listings.
Code and curated data: [MIT](LICENSE.md). Detailed third-party data and image licensing: [COPYRIGHT](COPYRIGHT.md). Data courtesy of FIFA's public API, Wikipedia, Open-Meteo, and Polymarket; verify broadcast rights with local listings. Prediction-market odds are shown for information only and are not betting advice.
2 changes: 1 addition & 1 deletion index.html
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<meta charset="UTF-8" />
<meta
http-equiv="Content-Security-Policy"
content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https://flagcdn.com https://api.fifa.com; connect-src 'self'; manifest-src 'self'; base-uri 'self'; object-src 'none'"
content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https://flagcdn.com https://api.fifa.com https://digitalhub.fifa.com; connect-src 'self'; manifest-src 'self'; base-uri 'self'; object-src 'none'"
/>
<meta name="referrer" content="no-referrer" />
<link rel="icon" type="image/svg+xml" href="./favicon.svg" />
Expand Down
Loading