Server Usage

The server (toboggan-server) hosts your presentation and synchronizes all connected clients in real time via WebSocket.

Starting the server

# Basic usage
toboggan-server presentation.toml

# Custom port
toboggan-server --port 9090 presentation.toml

# With hot reload (watch for file changes)
toboggan-server --watch presentation.toml

Connecting clients

Once the server is running, open any client and point it to the server URL:

ClientCommand / URL
Webhttp://localhost:8080
TUItoboggan-tui http://localhost:8080
DesktopLaunches and auto-connects

API endpoints

EndpointMethodDescription
/api/talkGETGet current talk state
/api/commandPOSTSend a command (NextSlide, PrevSlide, GotoSlide, etc.)
/api/commandsPOSTSend multiple commands at once
/wsWebSocketReal-time sync and notifications
/docGETInteractive API documentation (Scalar UI)

Available commands

{ "command": "NextSlide" }
{ "command": "PrevSlide" }
{ "command": "GotoSlide", "params": { "index": 0 } }

Systemd service (Linux)

[Unit]
Description=Toboggan Presentation Server
After=network.target

[Service]
ExecStart=/usr/local/bin/toboggan-server /path/to/presentation.toml
Restart=on-failure
User=youruser

[Install]
WantedBy=multi-user.target