A lightweight multi-instance Ontime viewer and control panel designed for event operators, stage managers and registration desks.
Connect and monitor multiple Ontime servers simultaneously from a single interface.
Display the current countdown timer for each connected Ontime instance.
View:
- Previous cues
- Current cue
- Upcoming cues
- Group information
- Notes and timings
Control Ontime directly from the interface:
- Previous cue
- Next cue
- Play
- Pause
- Stop
- Reload
- Add time
- Subtract time
- Quick time adjustments
Display:
- Remaining events
- Planned finish time
- Predicted finish time
- Current schedule status (ahead of schedule / delayed)
Configuration is stored locally in the browser using LocalStorage.
No backend or database is required.
This application is designed for:
- Ontime v3+
Each configured instance must expose:
- HTTP API
- WebSocket API
Default Ontime port:
4001
Example instance:
127.0.0.1:4001
Download the latest release and extract the files.
Open:
index.html
in any modern web browser, or serve the whole folder statically (plain HTTP server, nginx, etc.) — there is no build step and no backend to run.
No installation required.
Open the configuration panel and add one or more Ontime instances.
Example:
| Name | Host |
|---|---|
| Main Stage | 192.168.1.10:4001 |
| Conference Room A | 192.168.1.11:4001 |
| Registration | 192.168.1.12:4001 |
Configuration is stored under the ontime-multi-cuelist-config key in the
browser's LocalStorage and is shared between the Dashboard and the Cue List
view, so instances only need to be added once.
A host that embeds or serves this app statically (e.g. a kiosk/appliance front end) can pre-populate the instance list without any code changes here by writing a JSON array to that same LocalStorage key before the page's scripts run — the configuration panel still works normally on top of it.
The app is split into two static pages that share the same configuration and can be navigated between with the links in their headers.
Provides:
- Live timer
- Current cue
- Next cue
- Runtime status
- Operator controls
Provides:
- Previous cues
- Current cue
- Upcoming cues
- Group information
- Event notes
- Planned and predicted timings
Ideal for:
- Registration desks
- Stage managers
- Production coordinators
- Event assistants
Allow registration staff to see what is happening on stage in real time.
Monitor multiple stages from a single screen.
Track schedule deviations and predicted finish times.
Control Ontime remotely without opening the main Ontime interface.
index.html Dashboard view (markup)
app.js Dashboard logic: WebSocket/REST client, rendering, controls
styles.css Dashboard styles
cuelists.html Cue List view (markup)
cuelists.js Cue List logic
cuelists.css Cue List styles
reference/ Reference material only, not loaded by the app
Everything is plain static files — open index.html directly, or point any
static file server at the repository root. There is no build step, no
package manager, and no backend process.
- HTML5
- CSS3
- Vanilla JavaScript
- Ontime REST API
- Ontime WebSocket API
No frameworks required.
MIT License
GreenCrew Julian Szymański