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
TeamHub is a free open-source project available on GitHub. No hidden fees, no limits on tournaments, clubs or teams. Created for the sports community. We believe every sports club and tournament organizer should have access to professional management tools regardless of their budget. The entire source code is publicly available, so you can audit, customize or self-host it on your own infrastructure.
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.
TeamHub 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, TeamHub 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 |
| Price | €0 — free forever, no hidden fees |
| Source code | Publicly available on GitHub (open-source) |
| Limits | None — unlimited 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 |
TeamHub is a free open-source 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. The source code is available on GitHub under an open-source license.
Yes, TeamHub is completely free and open-source with no hidden fees. There are no limits on the number of tournaments, clubs, teams, or players you can manage. You can host it on your own server or use the hosted version at teamhub.sk. The project is community-driven and does not require any subscription or payment.
TeamHub 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, TeamHub 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.
No subscription fees — paid tournament platforms charge $10–50/month per organizer. TeamHub is free forever with no feature limits, no premium tiers and no per-tournament fees.
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.
Customizable and extensible — as an open-source project, you can modify the source code, add custom features, integrate with your existing systems or contribute improvements back to the community.
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.
TeamHub 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. The application is fully open-source and available on GitHub.