Complete system for managing sports tournaments and clubs. Groups, brackets, live results and referee mode — all in one place.
Group standings with automatic point calculation and ranking
Live results — real-time updates without page refresh
Knockout brackets — semifinals, finals, 3rd place match
Referee mode — mobile score and event entry from the field
Drag & drop scheduler with timetable and break management
Club management — sections, categories, training schedule and player database
Responsive web optimized for mobile with PWA installation support
TurnajHub is a professional platform for managing sports tournaments and clubs. Created for the sports community with a focus on simplicity, speed and reliability. We believe every sports club and tournament organizer should have access to professional management tools. Use the hosted version at turnajhub.sk — no installation required.
Tournament organizers who need a complete solution for managing groups, brackets and schedules for football, handball, basketball or any other team sport.
Sports clubs looking for tools to manage their sections, player rosters, training schedules and tournament participation in one central place.
Referees and coaches who want to enter scores and events directly from the field using a mobile device with real-time updates for spectators.
Group stage (round-robin) — all teams in a group play against each other. Standings are calculated automatically based on configurable point systems (e.g. 3 points for a win, 1 for a draw, 0 for a loss). Tie-breaking uses goal difference, goals scored, head-to-head record, and draw in that order.
Knockout brackets (single elimination) — classic tournament bracket with semifinals, finals and optional third-place match. Brackets are generated automatically from group results or seeded manually. Supports byes for uneven team counts.
Combined format — group stage followed by knockout phase. Top teams from each group advance to the elimination bracket. This is the most popular format for youth football tournaments, futsal cups and multi-day competitions.
Custom divisions — create separate categories within one tournament (e.g. U9, U11, U13, U15, seniors). Each division has its own groups, brackets and standings while sharing the same venue, schedule and administration panel.
TurnajHub provides real-time match updates using Server-Sent Events (Mercure protocol). When a referee enters a goal, assist, yellow card or red card from the mobile interface, all connected spectators see the update instantly — no page refresh needed. The public tournament page shows live standings, updated brackets and match timeline as events happen. For venues with large screens or projectors, TurnajHub offers a dedicated TV mode that automatically rotates between live scores, group standings and the match schedule. A sound notification alerts when a goal is scored. The TV mode runs in fullscreen and is designed for hands-free operation during tournament day.
| Tournament formats | 3 — groups (round-robin), knockout brackets, combined |
| Interface languages | 3 — Slovak, Czech, English |
| Platform type | Web application (PWA) — works on any device |
| Limits | Scales with your needs — tournaments, clubs, teams and players |
| Tech stack | React 19, Symfony 8, PostgreSQL, Mercure SSE, PWA |
| Real-time protocol | Server-Sent Events via Mercure hub |
| PDF exports | Match schedules, standings tables, match records |
TurnajHub is a web application for managing sports tournaments and clubs. Built with React and Symfony, it supports group stages with round-robin scheduling, single and double elimination knockout brackets, live score updates via Server-Sent Events (Mercure), a dedicated mobile referee interface, and a drag & drop match scheduler.
TurnajHub is sport-agnostic and works for any team sport including football, futsal, handball, basketball, volleyball, floorball, ice hockey, and more. You can configure custom point systems (e.g. 3 points for a win, 1 for a draw), tie-breaking rules, match durations, and division categories (e.g. U9, U11, U13, seniors) to match your specific sport and tournament format.
Yes, TurnajHub is a Progressive Web App (PWA) that works on any device with a browser. It can be installed on Android and iOS home screens for a native app-like experience. The referee mode is specifically designed for mobile use — referees can enter goals, assists, yellow and red cards directly from the field. Spectators see results update in real-time without refreshing the page.
Log in and click "New Tournament". Set the name, dates, sport, location, format (groups, brackets or both), divisions and point system.
Add teams manually or enable self-registration. Use the drag & drop scheduler to assign matches to fields and time slots. Groups and brackets are generated automatically.
Share the public link. Referees enter scores from mobile. Standings and brackets update in real-time. Use TV mode for venue displays.
Transparent pricing — no hidden fees, no per-tournament charges. Pay for what you need with no surprise costs or forced upgrades.
Full data ownership — your tournament data stays on your server. No vendor lock-in, no data mining, no third-party advertising. Export or migrate anytime.
Flexible and extensible — TurnajHub supports custom point systems, divisions, formats and multi-language output. It integrates smoothly into any sports event workflow without vendor lock-in.
Multi-language support — built-in localization for Slovak, Czech and English with easy extensibility for additional languages. All UI elements, notifications and public pages adapt to the selected language.
TurnajHub is built with React 19 and TypeScript on the frontend with Material UI components for a consistent, responsive user interface. The backend runs on Symfony 8 with PHP 8.4 and PostgreSQL database for reliable data storage. Real-time updates are powered by Mercure hub using the Server-Sent Events protocol, providing instant score notifications without WebSocket complexity. PDF reports (match schedules, standings tables, match records) are generated server-side using dompdf. Push notifications use the VAPID protocol for anonymous browser subscriptions.