Torch Signal

Synced audio for RPG sessions. One GM controls playback, listeners join and hear the same music — perfectly in time.

Everything for your session

🎵

Synced Playback

Server-driven clock keeps all listeners perfectly in sync. No drift, no buffering surprises.

💥

SFX Overlays

Sound effects layered over music — sword clashes, spells, ambiance. Up to 8 concurrent sounds with per-track volume control.

💬

Listener Chat

Live chat with dice roll support. Roll d20, 2d6+3, or any standard notation — results are server-verified.

📄

Shared Handouts

Share maps, images, PDFs, and notes with your group. Organized in folders with drag-and-drop sorting.

🎨

Mood Background

Set a shared mood image or folder slideshow. Everyone sees the same atmosphere.

🔒

Self-Hosted

Runs on your own server. No accounts, no tracking, no third parties. Your data stays yours.

How it looks

A clean, dark-themed interface built for long gaming sessions.

Screenshot: GM Panel
GM Panel — Library, Player, SFX, Files
Screenshot: Listener View
Listener View — Playback, Chat, Shared Files

Under the hood

Lightweight, modern stack. No bloat, no build step on the frontend. Docker-ready for easy deployment.

Node.js 22 Express WebSocket SQLite Docker Vanilla JS ffmpeg