Skip to content
Point Stream PanelMulti-tenantMulti-sport

Every mat.
Every point.
One console.

The live operations console for combat and team sport tournaments. Assign officials, score bouts in real time across every mat, and publish audience boards — from the same system that holds your athletes, events, and entries.

Federations, clubs, and venues are provisioned by the platform team — Starter, Pro, and Federation plans map to real feature gates in the product.

Audience board · live replica

Simulated bout

Mat A · Senior · 68 kg

Match #1284

Live

Red corner

A. Deshmukh

Kolhapur Akhada

4
TimeLive
00:34

Blue corner

R. Patil

Pune Combat Club

4

Point Stream · Live scoring · Mardani

Red +1 · Jab combo

Socket stream

/red-blue-fight

  • updateScoreroom:match#1284red +1
  • updateScoreroom:match#1284blue +2
  • updateScoreroom:match#1284blue +1

Coverage, measured from the product catalog

6

Sport modules

Mardani, Traditional, Combat hub, Kabaddi, Football, Volleyball

9

Combat disciplines

One shared bout pipeline, per-sport rounds and timers

15

Operational roles

From master admin to punch officials, each with its own surface

4

Public surfaces per match

Audience board, venue TV wall, OBS overlay, fan companion

3

Plan tiers

Feature gates enforced server-side and fail closed

The product

Four surfaces, one match state

A bout is scored once and read everywhere. Pick a surface to see the interface the product actually ships for that role.

fight_admin · game_admin

The problem

Paper cards and a whiteboard mean the score on the wall is always a few points behind the mat.

In the console

The operator board is the source of truth for a bout. Start, pause, and finish drive the clock; every point lands in the match room within a tick.

  • Timer + rounds
  • Warnings and states
  • Result persistence

Mat A · Senior · 68 kg

Match #1284

Live

Red corner

A. Deshmukh

Kolhapur Akhada

4
TimeLive
00:34

Blue corner

R. Patil

Pune Combat Club

4

Point Stream · Live scoring · Mardani

Red +1 · Jab combo

Officials

Locked
  • S. Bhosale

    red_referee

    Red corner
  • N. Chavan

    blue_referee

    Blue corner
  • D. Rane

    head_referee

    Head official

Unassigned corners cannot score. Every join is re-authorised against the assignment before a point is accepted.

Multi-mat operations

Four mats running at once, from one desk

A federation day is parallel by nature. The control room treats mats as first-class: each one carries its own queue, officials, and board, and every point still lands in the same database.

Mat ALiveMat BLiveMat CCalledMat DIdleControl room
LiveResult pendingCalledIdle

Select a mat on the floor or in the wall to inspect it.

Control room

Multi-mat live wall

2 live19 queued

Auto-refresh 15s · score reconcile compares board state against the database

Mat A

Mardani bout in progress. The audience board and OBS overlay for this mat are already published.

mardani · match #1284 · queue 6

How a bout moves

The five-step loop operators already run

Nothing here is aspirational — it is the sequence the console enforces, from creating the card to writing the result.

  1. 01

    Set up the card

    Create the bout or team fixture — corners, category, weight class, and the athletes pulled from your roster rather than retyped.

    POST /api/fight/add-fight-match

    New bout

    Athletes come from the org roster

    Sport
    Mardani
    Category
    Senior · 68 kg
    Red corner
    A. Deshmukh · Kolhapur Akhada
    Blue corner
    R. Patil · Pune Combat Club
    Bout time
    80 s · 1 round
    Mat
    Mat A
  2. 02

    Assign the officials

    Lock the red and blue corners plus an optional head official. Until the corners are filled, the bout cannot enter the queue and nobody can score it.

    POST /api/assignments/set

    Officials

    Locked
    • S. Bhosale

      red_referee

      Red corner
    • N. Chavan

      blue_referee

      Blue corner
    • D. Rane

      head_referee

      Head official

    Unassigned corners cannot score. Every join is re-authorised against the assignment before a point is accepted.

  3. 03

    Queue and start

    The bout joins its mat queue. Starting it opens the operator board, wakes the assigned pads, and publishes the audience board for that mat.

    socket startMatch

    Control room

    Multi-mat live wall

    2 live19 queued

    Auto-refresh 15s · score reconcile compares board state against the database

  4. 04

    Score live

    Officials award points from their own pads. Each delta broadcasts to the match room, so the board on the wall and the overlay on the stream move together.

    socket updateScore

    Mat A · Senior · 68 kg

    Match #1284

    Live

    Red corner

    A. Deshmukh

    Kolhapur Akhada

    4
    TimeLive
    00:34

    Blue corner

    R. Patil

    Pune Combat Club

    4

    Point Stream · Live scoring · Mardani

    Red +1 · Jab combo

  5. 05

    Finish and record

    Declare the result and method. The bout writes to athlete history, advances the bracket, and unlocks certificates and results export.

    socket finishMatch

    Bout complete

    Points

    Winner

    Draw

    44

    • Athlete history updated
    • Bracket advanced
    • Certificate unlocked
    • Results CSV row written

Coverage

The disciplines wired into the product

Not an “any sport” claim. These are the modules that exist, each with its own board, scoring rules, and officials model.

Sport modules

  • Mardani SportsFight scoring & boardsmardani-sports
  • Traditional MardaniPunch officials & totalstraditional-mardani-sports
  • Combat SportsBoxing, MMA, karate & morecombat-sports
  • Kabaddi SportsRaid & tackle boardskabaddi-sports
  • Football SportsGoals & live boardsfootball-sports
  • Volleyball SportsPoints & live boardsvolleyball-sports

Combat hub · one bout pipeline

rounds × seconds

Striking

  • Boxing3×180s
  • MMA3×300s
  • Kickboxing3×180s
  • Muay Thai3×180s

Point martial

  • Karate1×180s
  • Taekwondo3×120s

Grappling

  • Wrestling2×180s
  • Judo1×240s
  • BJJ1×300s

Adding a combat discipline does not mean a new product. All nine share the same bout table, board, and officials model — only the round and timer defaults differ.

How scoring works

Real time

One score, many screens, no drift

The live layer is a dedicated Socket.IO service, not a side effect of the web app. Here is what it actually guarantees.

Who scores

  • Red / blue corner pads

    joinMatch → authorize-scoring

  • Punch officials 1–4

    /solo-game · Panch1…Panch4

  • Operator board

    start · pause · reset · finish

What carries it

  • Match room broadcast

    updateScore, room-only

  • Short-lived socket tickets

    /api/auth/socket-ticket

  • Org-filtered queue snapshots

    queueSnapshot per tenant

What reads it

  • Audience scoreboard

    /public/scoreboard/{slug}

  • Venue TV wall

    /public/now/{org}

  • OBS overlay

    /public/overlay/{slug}

  • Fan companion

    /public/fan/{org}

Scores are room-scoped

A point is broadcast to its match room, never across the namespace. Two bouts on two mats cannot bleed into each other.

Authorisation is re-checked at join

Holding a link is not enough. Corner scoring is authorised against the current assignment every time a pad connects.

MySQL stays the source of truth

Boards are fast because they are in memory, but the result is persisted. Score reconcile compares the two and reports mismatches.

Restarts recover

With Redis configured, the socket layer runs multi-instance and restores bout snapshots after a restart instead of losing the card.

Access control

Everyone sees exactly their job

A punch official should not be able to open the billing console, and a coach should not be able to edit another club's roster. This matrix is generated from the product's own capability definitions.

Capabilities granted to each Point Stream Panel role
RoleOrgsUsersBrandingAthletesEventsBracketsMatchesAudit
Platform mastermaster_adminAll organizationsAllowedAllowedAllowedAllowedAllowedAllowedAllowedAllowed
Federation adminorganization_adminOne organizationNot allowedAllowedAllowedAllowedAllowedAllowedAllowedAllowed
Game admingame_adminOrganization eventsNot allowedNot allowedNot allowedAllowedAllowedAllowedAllowedNot allowed
Fight adminfight_adminMatch operationsNot allowedNot allowedNot allowedNot allowedNot allowedNot allowedAllowedNot allowed
Club ownerclub_ownerOne clubNot allowedNot allowedNot allowedAllowedAllowedNot allowedNot allowedNot allowed
CoachcoachClub athletesNot allowedNot allowedNot allowedAllowedAllowedNot allowedNot allowedNot allowed
Head officialhead_refereeAssigned boutsNot allowedNot allowedNot allowedNot allowedNot allowedNot allowedAllowedNot allowed
RefereerefereeAssigned boutsNot allowedNot allowedNot allowedNot allowedNot allowedNot allowedAllowedNot allowed
AuditorauditorRead-onlyNot allowedNot allowedNot allowedNot allowedNot allowedNot allowedNot allowedNot allowed
Punch officials 1–4punch_1…punch_4Own punch slotNot allowedNot allowedNot allowedNot allowedNot allowedNot allowedNot allowedNot allowed

Organization isolation

Users, matches, athletes, and certificates are scoped to an organization. A cross-tenant request returns 403 rather than an empty list.

Per-org overrides

A federation can tighten or loosen a capability for one role without a code change, and the override is applied on top of these defaults.

Audit trail

Sensitive operations — assignments, user changes, payment marking — are written to an organization-scoped audit log.

Audience

Publish once, appear everywhere

Giving a match a public slug produces every audience surface at the same time. Staff views stay behind authentication; only what you publish is public.

/public/now/mh-federation

Venue TV

Maharashtra Open · Day 2

On now
  • Mat AA. Deshmukh vs R. Patil4–4
  • Mat BS. Kulkarni vs M. Jadhav2–3
  • Mat CV. Shinde vs T. Gaikwad
Sponsors

Venue wall. Every mat on one screen for the hall, with organization branding and sponsor slots.

/public/overlay/mh-open-mat-a

Broadcast

Transparent background · drop into OBS as a browser source

A. Deshmukh44R. Patil

OBS overlay. A lower third that tracks the live bout, themeable per organization.

/public/fan/mh-federation

Phone

Follow from the stands

Senior · 68 kg

A. Deshmukh44R. Patil
  • Mat B · boxing 2–3
  • Mat C · called
  • Mat D · idle

Fan companion. Spectators follow bouts and see what is next without asking at the desk.

Plans

Tiers that map to real feature gates

These are not marketing tiers. Each plan code corresponds to a server-side gate: if a plan lapses or a feature is not included, the API refuses rather than degrading quietly.

Starter

Free

25 seats included

Mardani and traditional scoring, athletes, events, boards

Mardani scoringTraditional punch padsScoreboards & public linksCertificatesAthletes roster+2 more
Talk to us

Pro

Most common

₹4,999/ period

100 seats included

Adds the combat hub, team sports, brackets, squads, control room

Mardani scoringTraditional punch padsCombat sports hubTeam sports boardsScoreboards & public links+9 more
Talk to us

Federation

₹14,999/ period

500 seats included

Adds multi-mat queues and tech settings at federation scale

Mardani scoringTraditional punch padsCombat sports hubTeam sports boardsScoreboards & public links+11 more
Talk to us

Indian rupee list prices. Billing runs through Razorpay where it is configured for your deployment; offline settlement is supported for federations that need it.

Full plan comparison

Bring your next event day onto one console

Tell us how many mats you run and which disciplines you score. We will set up an organization and walk your officials through the pads.

  • Walk through a live bout on your own sport
  • See the control room with your mat layout
  • Review tenancy, roles, and audit before you commit