Všechny projekty

Prag Kartalları

Prag Kartalları — Platforma pro sportovní fanoušky

Platforma s živými sportovními daty pro pražský spolek příznivců Beşiktaşe. Sledování zápasů v reálném čase, automatizované datové pipeline a vícejazyčný obsah v turečtině, angličtině a češtině.

PHP MariaDB Tailwind CSS Alpine.js API integrace Cron automatizace
pragkartallari.cz
Prag Kartalları — Platforma pro sportovní fanoušky

Zadání

Prag Kartalları je spolek příznivců fotbalového klubu Beşiktaş se sídlem v Praze — právě probíhá oficiální registrace. Potřebovali web sloužící jako centrum jejich komunity: živá data o zápasech, tabulky, informace o kádru a obsah spolku. Musel fungovat v turečtině, angličtině a češtině a zůstávat aktuální automaticky bez manuálního aktualizování.

Co bylo vytvořeno

Datová PHP platforma s automatizovanými pipeline, které udržují data o zápasech a kádru aktuální nepřetržitě.

Centrum zápasů zobrazuje poslední dva výsledky a nejbližší utkání ve třísloupcovém rozložení. Během živého zápasu přechází do živého zobrazení: skóre v reálném čase, uplynutá minuta a časová osa událostí. Modální okna s detaily zápasu zobrazují góly, karty a penalty s minutovou časovou osou.

Automatizovaný systém aktualizací spouští tři naplánované úlohy:

  • Hodinová — načítá aktuální tabulku Süper Ligu z ESPN API, aktualizuje všech 18 týmů.
  • Noční — synchronizuje všechna utkání (Süper Lig, UEFA, Turecký pohár), aktualizuje data kádru a předem naplánuje úlohu pro zápasový den pro každý nadcházející zápas do 24 hodin.
  • Zápasový den — spouští se každou minutu během zápasového okna BJK. Načítá živé skóre a události, aktualizuje databázi v reálném čase, po závěrečném píšťalce spustí finální aktualizaci tabulky, poté se sám ukončí.

Úloha pro zápasový den je dynamicky vytvářena a rušena prostřednictvím API externího cron servisu — bez manuálního plánování. Systém spravuje svůj vlastní životní cyklus.

API integrace

ESPN API je nezdokumentované a neoficiální. Bylo nutné provést zpětnou analýzu endpointů, struktur odpovědí a hraničních případů — včetně zpracování kódů stavu živých zápasů, které ESPN používá nekonzistentně. Fotografie hráčů pocházejí z API-Football a jsou párované s záznamy hráčů ESPN podle čísla dresu a normalizace příjmení.

Stránka spolku

Samostatná stránka spolku pokrývá poslání organizace, historii (časová osa od roku 2015), členství (integrace Google Forms), aktivity a kontakt. Obsah je všude trojjazyčný.

Stack

PHP · MariaDB · Tailwind CSS · Alpine.js · ESPN API · API-Football · Docker (lokální vývoj) · Sdílený hosting

Máte podobný projekt?

Jsem k dispozici pro nové zakázky. Promluvme si.