O projektu
Klient za mnou přišel s nápadem na platformu, která by zjednodušila organizaci amatérských hokejových zápasů. Trh byl roztříštěný – hráči si sháněli ledy přes Facebook, správci hal řešili obsazenost ručně, bez jednotného systému.
Cíl byl jasný: vytvořit přehlednou aplikaci, která propojí obě strany, automatizuje správu termínů i komunikaci a bude připravená růst.
Zadání
Klient měl základní grafickou představu, ale celý návrh struktury, databáze, logiky i UI/UX jsem zpracoval já.
Požadavky byly:
- stabilní a přehledná webová aplikace,
- možnost snadno přidávat nové haly, spravovat nabídky a přijímat rezervace,
- profil hráče s možností rezervací a historie zápasů,
- notifikace, hlídací pes, exporty a automatizace provozu,
- robustní základ pro další vývoj – bez žádného vendor lock-inu.
Moje řešení
Aplikaci jsem postavil od nuly na Laravelu 12, frontend postavil na Bootstrapu 5 a administrační rozhraní řešil pomocí Filamentu 3 s vlastními komponentami.
Veřejná část slouží jako katalog ledových ploch s přehlednou nabídkou, možností registrace a přihlášení. Po přihlášení se hráčům i správcům zpřístupní jejich dashboard – rezervace, zápasy, správa termínů, přehled vytížení a další.
Systém je navržen jako plně automatizovaný:
- rezervace a upozornění běží přes Laravel Notifications,
- hlídací psi, e-maily, exporty a cron akce běží přes queue systém,
- soubory spravuje MediaLibrary od Spatie,
- formuláře chrání Turnstile od Cloudflare,
- nasazení zajišťuje CI/CD pipeline včetně statické analýzy (Pint, Larastan) a automatizovaných testů (aktuálně 80 % pokrytí přes PHPUnit).
Výzvy a jak jsem je řešil
Největší výzvou bylo navrhnout systém tak, aby ho zvládl používat jak běžný hráč na mobilu, tak správce haly, který potřebuje rychle reagovat a spravovat desítky rezervací týdně.
Zároveň bylo klíčové připravit robustní backend – queue systém odděluje náročnější procesy (notifikace, exporty, hlídací pes), což zajišťuje výborný výkon i při vyšším zatížení.
Filament umožnil navrhnout přehledné administrační rozhraní, které zvládne i netechnický uživatel – s rozdělením práv a vlastními pohledy podle role.
Výsledek
Stridej.cz dnes aktivně spojuje hráče a správce ledových ploch – především v Praze, ale systém je připravený škálovat i dál.
Denně probíhají nové rezervace, uživatelé dostávají notifikace, sledují dostupnost ploch a organizují vlastní zápasy.
Celý provoz je plně automatizovaný. Klient má přístup k přehledným statistikám a možnost platformu dále rozvíjet – ať už o mobilní aplikaci, nové role nebo platební bránu.
Použité technologie
- Laravel 12
- Bootstrap 5
- Filament 3
- Spatie MediaLibrary
- Laravel Notifications
- Laravel Queues
- CI/CD (autodeploy, Pint, Larastan)
- PHPUnit (80 % test coverage)
Dodané výstupy
- návrh databázové a aplikační architektury,
- UX návrh a kompletní vývoj frontend + backend
- správa hráčských profilů, rezervací a termínů
- administrační rozhraní přes Filament (vč. vlastních komponent)
- notifikační systém a hlídací pes
- automatické nasazení a monitoring (CI/CD, testy, statická analýza)
- školení, předání dokumentace a podpora
Co o spolupráci říká klient
„Opět naprostá spokojenost!“
![]()
David Moravec