Main Menus

The sidebar lists the primary areas of the app. Together they manage roster data, what the HUD server exposes, and which overlays are live.

Written By Akkeoh

Last updated 1 day ago

1. HUDS

Central place for your saved HUD projects: metadata (name, version, author, preview), and whether each HUD is mounted as a live browser overlay.

Core actions

  • Create / register a HUD — Add a HUD card to the list (name, version, creator, optional preview image). Data is stored locally and tied to files under the app’s HUD directory.

  • Activate / “go live” — Starts serving that HUD on the local overlay server (default http://127.0.0.1:8080 with a path from metadata, e.g. /hud). Multiple HUDs can be live at different paths.

  • Deactivate — Stops serving that HUD’s mount point.

  • Primary HUD — The last activated HUD is treated as primary for defaults such as team color metadata and “open in browser” links.

  • Team colors — When the active HUD’s metadata supports it, you can adjust CT/T tint colors used by components that use the “team color” option (SVG/image tinting).

  • Import / export — Import a .hud package or export a HUD for backup or sharing.

  • Open Builder — Jump into the Builder to edit an existing HUD (desktop; opens the builder window).

  • Delete — Remove a HUD from disk (with confirmation).

Use cases

  • Run one overlay for stream A and another path for stream B.

  • Swap primary HUD between tournament branding and a minimal test layout.

  • Iterate in Builder, save, refresh the browser source to see changes.

2. Teams

Team records hold display data used across matches, veto UIs, and HUD bindings (names, logos, country flags).

Functions

  • Add / edit / delete teams.

  • Search — Filter the grid by name or flag code.

  • Visual identity — Name, flag (for flag icon components), and optional logo/image fields depending on your forms.

  • Teams are referenced by matches (team A vs team B) and flow into active-match payload and HUD bindings.

Use cases

  • Maintain a league roster book once, reuse teams every week.

  • Pair teams with players for consistent logos on scoreboards and veto screens.

3. Players

Player profiles link real people to Steam IDs, display names, pictures, and optional team associations — the app uses them to enrich GSI data for overlays.

Functions

  • CRUD — Create, edit, delete players.

  • Steam ID — Primary key for matching in-game players to your database (names, pictures, flags).

  • Deep links — Other pages can open the player editor with query params (e.g. prefill from Live Match).

  • Works with Strict players (Settings): when strict mode is on, only players registered for the current match’s teams participate in certain HUD logic (e.g. alive counts, team blocks).

Use cases

  • Override in-game names with broadcast names and sponsor-safe spellings.

  • Assign headshots for Player Focus and roster components.

4. Matches

Matches describe who plays whom, schedule, format (BO1 / BO3 / BO5), status (upcoming / live / completed), and optional map veto state.

Functions

  • Create / edit / delete matches; pick two teams from your team list.

  • Schedule — Optional datetime for ordering and display.

  • Active match — One match can be marked active; its payload is synced to the HUD server for components that read “current match” (veto, team names, etc.).

  • Map veto — Dedicated route for veto flow; updates stored veto maps (banned/picked, sides) consumed by Builder components and LastHUD API triggers.

  • Tournament link — Optional tournamentId to associate a match with a tournament row.

Use cases

  • Drive map-veto HUDs during draft phases.

  • Switch active match between games on a multi-match card.

5. Tournaments

Tournaments store branding and scheduling metadata. One tournament can be marked active; its name and logo are exposed to the overlay for components that bind to “active tournament”.

Functions

  • CRUD — Name, organizer, optional logo, schedule, active flag.

  • HUD sync — Saving tournaments updates local storage and pushes active tournament data to the HUD server so overlays can fetch it (see /api/active-tournament on the overlay host).

Use cases

  • Show league logo and title on all HUDs for an event weekend.

  • Link matches to the same tournament for consistent metadata.

6. Live Match

Live-focused view that reads CS2 GSI (polling game state) and shows CT / T slots aligned with observer order. It bridges the live server with your registered players.

Functions

  • Per-slot display — See Steam IDs and resolved names (strict vs non-strict naming rules from Settings).

  • Camera links — Per Steam ID, store a URL (e.g. vdo.ninja) used when HUD components prefer a live camera over a static picture. Values sync to the overlay server.

  • Navigation shortcuts — Jump to player creation when a slot is not yet registered.

Use cases

  • Configure Player Focus or camera-style components before going live.

  • Verify which roster entries match the current server roster.

7. Builder (menu entry)

The Builder item opens the game picker (Builder picker page). Currently Counter-Strike is available; other titles are shown as coming soon.

Functions

  • Choose game — For CS2, the desktop app invokes openBuilderWindow to open the dedicated Builder window (separate from the main shell).

  • License — Personal-tier accounts may hide Builder in the sidebar; Studio/Partner tiers include Builder access.

Use cases

  • Enter the full-screen Builder to author or edit HUD layouts and export .hud files.

For component-level documentation, see Builder — components & triggers.

8. Settings

Application preferences, data portability, overlay synchronization, and account-related options.

Functions (representative)

  • Export / import — Backup or restore players, teams, matches, tournaments, and related JSON data.

  • Strict players — When enabled, HUD logic that depends on registered players only considers players belonging to the two teams of the active match. When off, any registered player whose Steam ID appears on the server can be used.

  • Registered players & pictures — Pushes Steam ID lists and name/picture maps to the overlay server so HTML components and GSI can resolve display names and avatars.

  • HUD keybinds — Up to 18 accelerator slots (9 primary + 9 optional). HUDs poll /api/hud-keybinds and fire times via /api/hud-keybind-last-fire; Builder triggers can listen for keybind slots.

  • License / seats — Studio/Partner flows may include a “Manage seats” area for multi-seat licenses (where implemented).

  • Authentication — Sign-in state is tied to the desktop app’s auth integration.

Use cases

  • Move a production roster to another machine via export/import.

  • Align on-air graphics with production keybinds for operator-triggered animations.