debate-round

FIAT — the live round workspace: the ag-Grid flow spreadsheet, column navigation and split view, the round setup dialog (tournament, teams, judges, spectators, winner), speech doc panels, export and history dialogs, and the flow/settings stores behind them.

import { DebateFlowPage, useFlowStore } from "debate-round"

Composes debate-timer for speech timing and recording and debate-editor for speech docs; the flow types themselves live in src/types/flow.ts.

Package layout

Logic lives under src/, grouped by role; tests live under test/.

debate-round/
├── src/
│   ├── controls/     # column navigator, quick actions, split-mode toolbar
│   ├── dialogs/      # round editor, file export, flow history
│   ├── flow/         # ag-Grid flow spreadsheet and its renderers
│   ├── hooks/        # flow, speech, timer and URL-sync hooks
│   ├── layout/       # page header, sidebar, main content, speech doc panel
│   ├── navigation/   # flow tabs
│   ├── panels/       # DebateRoundPanel shell and per-feature panels
│   ├── state/        # zustand stores (flow, settings, history, profile)
│   ├── types/        # flow and settings types
│   ├── utils/        # flow + localStorage helpers
│   └── index.ts      # public entry point
└── test/             # Vitest suites for the flow and storage helpers

Tests

bun run test        # or: npx vitest run
bun run coverage    # writes ./coverage for this package alone