Skip to content

SyncTV Documentation

A self-hosted synchronized watching app organized around rooms, playback, chat, media sources, and members.

Rooms are the daily entry point in SyncTV. Users watch, chat, and switch playlists in rooms. Room administrators manage members and permissions. Platform administrators maintain accounts, reviews, Providers, livestreaming, and runtime policy.

These docs are organized by task. Start with “Use SyncTV” for the product experience, “Administer SyncTV” for instance management, “Install and Upgrade” for deployment, and “Develop with SyncTV” for client integration.

GoalPage
Sign in and protect an accountSign In and Account Security
Create or join a roomCreate and Join Rooms
Fix playback drift or failureSynchronized Playback and User Troubleshooting
Add mediaAdd Media
Manage users, rooms, and reviewsAdminister SyncTV
Start a self-hosted instanceQuick Start
Build a clientClient Integration Guide

Rooms

Members, playlists, chat, permissions, and current playback state are organized around rooms. See Rooms.

Synchronized Playback

The server owns room playback state. Clients follow play, pause, seek, and media changes through Realtime. See Playback Model.

Media Sources

Providers turn Alist, Emby/Jellyfin, Bilibili, direct URLs, remote services, or live inputs into playable results. See Media Sources.

Permissions

Global roles, room roles, member overrides, and room settings decide what each person can do. See Permissions Model.

Production Checklist

Confirm TLS, secrets, PostgreSQL, Redis, backups, metrics, management access, and restore practice.

Runtime Boundaries

Understand PostgreSQL, Redis, secrets, management endpoints, media proxying, and non-goals.

Configuration Entry

Configuration files, environment variables, runtime settings, and CLI overrides have different scopes.

For deployment paths, see Choose a Deployment Path. For runtime dependencies and non-goals, see Runtime Boundaries. For all configuration fields, see Configuration Index.

SyncTV is licensed under the MIT License. See the repository LICENSE file for the full terms.