Modules
A module is a kind of source you place on a scene, like a source type in OBS. Each one reads part of the marathon's live state (the run, the runners, the timer) and redraws when it changes. Its settings appear in the editor's Properties; its look can be rewritten in the Code tab.
Default styles read the layout tokens, so a new source already matches the layout's colors and fonts.
Basic
Text
Fixed text, such as a title or a label.
| Setting | What it does |
|---|---|
| Text | what it shows |
| Align | left, center or right |
Can render as an OBS text source. For text that changes with the run, write a template instead.
Shape
A rectangle, ellipse or line, for panels, backgrounds and dividers.
| Setting | What it does |
|---|---|
| Kind | rectangle, ellipse or line |
| Fill | color of the shape |
| Border width, border color | outline |
| Radius | rounded corners, rectangles only |
Can render as an OBS color source when the fill is a plain #rrggbb color.
Media
Image
One image from the organization's library, or from a web address.
| Setting | What it does |
|---|---|
| Image | pick from the library; wins over the URL |
| URL | an http or https image address |
| Fit | contain (whole image), cover (fills the box, crops the rest) or fill (stretches) |
Slideshow
Several library images, one at a time with a transition, or all of them scrolling in a strip. Good for sponsor and partner logos. Every overlay shows the same image at the same moment.
| Setting | What it does |
|---|---|
| Images | the images, in order; add from the library, drag to reorder |
| Display | slideshow (one at a time) or marquee (scrolling strip) |
| Transition | fade, slide (four directions), zoom, implode, flip or cut |
| Interval | seconds per image |
| Duration | length of the transition, in milliseconds |
| Fit | contain, cover or fill |
| Gap, reverse | marquee only: space between images, scroll to the right |
Run
Run info
The current run: game, category, platform, estimate, host, commentators and the game cover. Show picks which of them appear. Values swap with an animation when the run changes.
Next runs
What comes after the current run, from the dashboard's upcoming list or the schedule.
| Setting | What it does |
|---|---|
| Display | list (several at once) or ticker (one at a time, rotating) |
| Count | how many runs, 1 to 10 |
| Interval | seconds per run, ticker only |
Runner
Runner card
One runner: name, pronouns, avatar, stream channel, and their finish time and place once they finish.
| Setting | What it does |
|---|---|
| Runner | slot 1 to 4 on the dashboard |
| Show | which fields appear |
A card for runner 3 shows nothing in a solo run. Place one card per slot and the scene works for any number of runners.
Game and webcam feeds
Game feed and Webcam feed mark where a runner's capture goes.
| Setting | What it does |
|---|---|
| Runner | slot 1 to 4 |
| Fit | stretch (fills the box) or cover (keeps the 16:9 shape and crops the rest) |
| Show outline | a dashed outline while the feed is a transparent hole, handy while designing |
What a feed shows is not a setting of the layout. The operator picks it on the live dashboard, per runner: their Twitch channel, a YouTube or Kick stream, a stream URL, a vdo.ninja capture, or a transparent hole over a capture you set up in OBS yourself. See Feeds. The layout only says where the feed goes and whose it is.
Timer
Timer
The run timer, controlled from the dashboard.
| Setting | What it does |
|---|---|
| Runner | 0 for the main timer; 1 to 4 show that runner's final time and place once they finish |
| Format | auto (M:SS, hours from one hour), always hours (H:MM:SS) or tenths |
In a race, place one timer per runner: each runs with the main timer and freezes on that runner's time when they finish. The timer reads the server's clock, so every overlay shows the same time.
Countdown
Counts down to the time set on the dashboard, for "starting soon" screens and breaks.
| Setting | What it does |
|---|---|
| Label | text above the countdown |
| Ended text | shown when it reaches zero |
| Format | auto or always hours |
Info
Ticker
Rotates the messages typed in the dashboard's ticker panel, one per line.
| Setting | What it does |
|---|---|
| Interval | seconds per message |
| Transition | fade, up, down, left, right, flip, explode or implode |
Now playing
The artist and title from the dashboard's music panel. Hidden when nothing is set. Show label adds a "Now playing" label.
Donations
Donation total
The marathon's total, in its currency. With Count up the number counts from the old total to the new one when a donation comes in. Label adds text before it. Number language picks the thousands and decimal separators (English 1,234.50, Portuguese 1.234,50), or follows the marathon's language on Auto. Turn off Show cents to round to whole units.
Internal
Blocks placed in a scene are sources of their own internal type. They don't show in the module picker; you add them from the Blocks list, see Blocks.