Bracket Types
Different tournament formats use different bracket visualizations:- Swiss Bracket
- Elimination Bracket
- Round Robin
Displays teams grouped by win-loss records in a column-based layout.Features:
- Record pools (0-0, 1-0, 0-1, 1-1, etc.)
- Advancement/elimination tracking
- Final results column
Interactive Navigation
Pan and Zoom
All brackets support interactive navigation:Pan (Drag)
Click and drag anywhere on the bracket to pan.
- Mouse: Click and drag
- Touch: Touch and drag
- Momentum: Release while moving for inertia scrolling
Zoom
Use zoom controls or keyboard shortcuts:
- Zoom In: Click + button or
Ctrl/Cmd + Scroll Up - Zoom Out: Click - button or
Ctrl/Cmd + Scroll Down - Reset: Click percentage button to return to 75% zoom
- Range: 50% to 300% zoom
Minimap Navigation
For large brackets (>4 rounds), a minimap appears in the bottom-right:- Shows entire bracket structure
- Blue rectangle indicates current viewport
- Click/drag to navigate quickly
- Auto-hides when not needed
- Opacity increases on hover
Bracket Components
Match Cards
Each match is displayed as an interactive card:Match States
Matches display different states:TBD (To Be Determined)
TBD (To Be Determined)
Teams not yet determined. Shows placeholder “TBD” text.
Scheduled
Scheduled
Teams assigned, match not started. Shows team names and scheduled time.
Live
Live
Match in progress. Shows current map scores and status.
Finished
Finished
Match complete. Shows final score and winner highlight.
Bye
Bye
Team receives automatic advancement. Shows single team.
Elimination Bracket Display
Single and Double Elimination brackets use a tree structure:Round Structure
Connection Lines
SVG lines show progression between rounds:- White: Winner advancement paths
- Red: Loser drops to lower bracket (Double Elim)
Round Labels
Rounds are labeled contextually:Swiss Bracket Display
Swiss format uses a unique column-based display:Record Pool Layout
Record Tracking
Swiss brackets track team records in real-time:Pool Sorting
Record pools are sorted for clear progression:Round Robin Display
Round Robin uses a table instead of bracket visualization:- Match wins (primary)
- Round differential (tiebreaker)
- Head-to-head record (tiebreaker)
Match Scheduling
Organizers can schedule bracket matches:Schedule Display
Scheduled matches show time until start:Real-Time Updates
Brackets update automatically via GraphQL subscriptions:- Match status changes (Scheduled → Live → Finished)
- Score updates during live matches
- Team assignments when matches complete
- Bracket generation for next rounds
Bracket Redraw
Connection lines are redrawn when bracket updates:Zoom and Pan Implementation
The bracket viewer uses CSS transforms for smooth navigation:Momentum Scrolling
Drag gestures include momentum for smooth scrolling:Performance Optimization
Virtualization
For very large brackets, consider viewport culling:Debounced Updates
Debounce expensive operations:Accessibility
Keyboard Navigation
Screen Reader Support
Add ARIA labels for accessibility:Next Steps
Managing Tournaments
Learn tournament administration and match management
Tournament Formats
Understand different bracket formats in detail
Match Scheduling
Schedule and manage tournament matches
Team Management
Add, remove, and seed teams