Capability

Scoreboard Designer

Design once. Broadcast live. Any screen.

The ScoreForge Display app is a native desktop application built with Rust for building and broadcasting custom scoreboards. Drag components onto a canvas, bind them to live match data, and display the result on any connected monitor in fullscreen. Scoreboards update in real time as points are scored — no manual refresh, no delay.

01

Visual canvas editor

Build scoreboards on a 1920×1080 canvas with precise control. Drag components to position them, resize with handles, and snap to a configurable grid. Every component has adjustable z-index for layering, lock to prevent accidental moves, and visibility toggles. Undo support lets you revert up to 50 changes.

1920×1080 default canvas with zoom and pan controls

Configurable grid system with snap-to-grid toggle (default 20px grid)

Component z-index ordering for layering control

Lock, visibility toggle, and up to 50-step undo per project

02

9 component types

The component library provides three static types — Text, Image, and Background — plus six tennis-specific components that bind to live data: Game Score, Set Score, Match Score, Player Name, Doubles Name, and Serving Indicator. Each component is fully styled: font size, color, background, border, alignment, and auto-fit text.

Static: Text (multiline), Image (PNG/JPG/GIF/WebP/BMP), Background (color + image)

Tennis: Game Score, Set Score (configurable set number), Match Score (sets won)

Tennis: Player Name, Doubles Name, Serving Indicator (custom color and size)

Full styling: font size (1–200 or auto-fit), RGBA colors, borders, alignment

03

Live data binding

Connect to the ScoreForge backend using a Convex URL and API key, then browse to a specific tournament, bracket, and match. The display app subscribes to real-time updates through the Convex SDK — scores, server changes, and match completion reflect instantly on the scoreboard with zero polling.

Step-by-step connection: enter credentials → select tournament → bracket → match

Real-time subscriptions via Convex Rust SDK — no polling or manual refresh

Live data includes scores, serving player, tiebreak state, and match completion

Background tokio runtime handles async data on the main render thread

04

Multi-monitor broadcast

Output your scoreboard to any connected display in fullscreen. The app auto-detects all monitors with their name, resolution, and scale factor. Choose a target monitor and launch the display — the scoreboard renders at native resolution with live data streaming in real time.

Auto-detects all connected monitors with resolution and scale info

Fullscreen output at native resolution on the selected display

Live scores update on the broadcast display in real time

Multiple projects can be open simultaneously in separate tabs

05

Save, export, and share

Scoreboards save as JSON files with full component state. For sharing, export as an .sfbz bundle — a ZIP archive containing the scoreboard definition and all referenced image assets. Import a bundle to recreate the exact scoreboard with its assets on a different machine.

JSON save format with version, dimensions, components, and data bindings

.sfbz bundle: ZIP with scoreboard.json + assets/ folder (Deflate compression)

Import bundles to restore scoreboards with all embedded images

Recent files list (up to 10) persisted across sessions

Ready to run your tournament?

ScoreForge gives your operations team the tools to manage brackets, score matches live, and broadcast results — all from one platform.