# Build a display loop

A display loop is a playlist. You pick which modules should appear on the projector and in what order, and the projector cycles through them on a timer. Each module controls its own duration, so the loop's total runtime is the sum of its parts.

You can build as many loops as you want. A typical setup is one loop per TV location: a "main hall" loop that rotates every level's leaderboard plus the latest scores feed, and a "vault station" loop that only shows vault-specific content.

## Prerequisites

* At least one [leaderboard display](/projector/create-a-leaderboard-display.md) or [latest scores display](/projector/create-a-latest-scores-display.md) saved

## Steps

1. From the meet dashboard, click **Projector Display** in the sidebar.
2. In the **Loop builder** panel on the right, click **New loop**.
3. Give the loop a name (for example, "Main Hall", "Vault Station", "Saturday AM") and click **Create**.

The new loop is now selected in the loop dropdown. It starts empty.

### Add modules to the loop

1. In the **Module library** panel on the left, click the module you want to add. Its configuration opens in the middle panel.
2. Click **Add to loop**. The module appears in the loop builder's list on the right.
3. Repeat for each module you want in this loop.

### Reorder modules

Drag modules up and down in the loop builder list. The order here is the order the projector plays them. A full cycle plays every module once, then starts over from the top.

### Remove a module

Click the remove button next to a module in the loop list. The module itself isn't deleted — it stays in the library and in any other loops that reference it.

### Save

Click **Save** in the loop builder panel. Until you save, the dropdown shows "Unsaved" next to the loop name, and edits aren't picked up by any running projector.

## How timing adds up

The loop builder shows the total runtime and screen count at the bottom of the panel. The calculation is:

* **Leaderboard display** — Each apparatus counts as one page. A leaderboard with 4 apparatus at 8 seconds per page contributes 32 seconds.
* **Latest scores display** — Counts as one page at the module's seconds-per-page setting. A latest scores module at 30 seconds contributes 30 seconds.

Sum those across every module in the loop to get the total cycle time. A loop under 2 minutes is usually a good target so spectators don't wait long to see their apparatus come back around.

## Manage existing loops

* **Rename a loop** — Click **Edit loop** to change the name
* **Duplicate a loop** — Inside the edit dialog, use the duplicate option to copy a loop and modify it
* **Delete a loop** — Click **Delete loop**. This removes the loop only; the modules inside it stay in the library

## What's next

* [**Launch the projector**](/projector/launch-the-projector.md) — Open the loop in full-screen on a venue computer
* [**Update a running projector from another device**](/projector/update-from-another-device.md) — Change what's showing live

## Related

* [Create a leaderboard display](/projector/create-a-leaderboard-display.md)
* [Create a latest scores display](/projector/create-a-latest-scores-display.md)
* [Projector display overview](/projector/index.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.gymart.org/projector/build-a-display-loop.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
