BeatKhana Development

BeatKhana, documented

BeatKhana brings tournament registration, map pooling, brackets, match coordination, TournamentAssistant, broadcast graphics, and public discovery into one platform. This wiki explains how those pieces fit together and which role owns each decision.

Platform status

These pages describe the public BeatKhana platform as of August 2026. Features explicitly marked work in progress should not be treated as production commitments.

Choose your path

Platform map

AreaWhat it ownsMain users
Tournament managementIdentity, lifecycle, registration, rules, pages, timeline, permissionsOrganisers
Brackets and matchesDivisions, brackets, matches, advancement, declared winnersHead coordinators
PoolingSuggestions, votes, flairs, pool slots, imports, publishing and archiveHead poolers, poolers
CoordinationMatch selection, players, maps, picks/bans, TA state, score submissionCoordinators, referees
Hosting and castingStream assignment, broadcast credentials, match presentationStream hosts, casters
Dynamic overlayLive documents, reusable components, scene renderer and outputsBroadcast operators
Public siteDiscovery, registration, brackets, qualifiers, teams, timelinePlayers and viewers
Developer platformOAuth applications, REST client, sockets, CDN and integration hooksDevelopers

Before you begin

An operational BeatKhana tournament normally needs:

  1. A BeatKhana tournament created as a private draft.
  2. A real TournamentAssistant tournament and server configuration when using live TA integration.
  3. At least one match flow before picks/bans or match progression can operate correctly.
  4. Staff roles and permissions assigned to the people running pooling, coordination, refereeing, casting and hosting.
  5. Divisions, brackets, matches and pools that agree with the published rules.
  6. A visibility request after the public identity, schedule, rules, registration and staff setup are ready for review.

Translation model

Each topic is an independent MDX file. To add a translation, copy a page to the locale naming convention (for example organisers.hu.mdx), translate prose without changing slugs or code, and add the locale to the Fumadocs i18n configuration. Navigation lives in content/docs/meta.json, so translators do not need to edit React components.

On this page