SyncTube
Synchronized web app for shared video playback and chat
385 stars 64 forks last commit first released MIT
Actively maintained
Last commit 23 Aug 2026.
SyncTube is a lightweight web application that synchronizes video playback across connected users and provides an integrated chat and playlist interface. The project source is implemented using Haxe and runs on a Node.js runtime, with optional Docker deployment for convenience.
Key Features
- Leader-controlled global playback (play/pause/seek/playback-rate) for coordinated viewing.
- Support for YouTube (videos, shorts, streams, playlists), Streamable, VK, PeerTube, raw mp4 and m3u8 playlists; iframes are supported (without sync).
- Local video upload support allowing playback to start before upload completes.
- External subtitle formats (vtt/srt/ass) and external audio/voiceover track support.
- Chat with built-in commands (time rewinds, flashback, volume, admin controls such as ban/kick/dump/crash) and hotkeys for quick control.
- Mobile-friendly compact view and Android page-fullscreen behavior.
- Plugin architecture (example plugins: octosubs, qswitcher) and ability to override front-end files via a user/res folder.
- Optional server-side YouTube cache feature (requires an optional ytdlp helper and ffmpeg to build cached mp4s).
- Docker and docker-compose files included for containerized deployment.
Use Cases
- Friends or small groups who want to watch YouTube videos or direct media links in perfect sync while chatting.
- Remote watch parties, study groups, or media review sessions where a single leader controls playback and timing.
- Lightweight testing or demonstration of synchronized playback, subtitle and audio-track handling in a web environment.
Limitations and Considerations
- Authentication is minimal: users sign in with a nickname by default (no built-in persistent account system or full user management out of the box).
- Server-side YouTube caching requires optional external components (a ytdlp helper package and ffmpeg) and additional storage configuration.
- The repository shows no formal packaged releases; deployment is primarily via source build or provided Docker configuration.
SyncTube is a focused, practical implementation for synchronized viewing and chat tailored to small groups and self-deployment. It emphasizes simplicity, extensibility and multiple deployment methods (direct Node.js or Docker), making it suitable for private watch parties and experimentation.
Categories:
Tags:
Tech Stack:
Similar to SyncTube

Nextcloud Talk
Privacy-respecting, self-hosted chat and video meetings.
Self-hosted Nextcloud Talk combines chat, video calls and webinars into one secure collaboration app.
CyTube
Node.js-based synchronized media watchroom with chat and playlists
Web app for synchronized group watching: per-channel playlists, real-time chat, moderation, and multi-source media playback.

ZipCaptions
Browser-based real-time closed-caption and transcription app
Open-source PWA that generates live captions and transcripts in the browser; supports broadcasts, OBS/vMix integration, and optional Azure AI captions.


Snikket
Open-source XMPP messaging server with encrypted chat and WebRTC
Self-hosted, open-source XMPP-based messaging server providing end-to-end encryption, multi-device sync, federation, secure backups, and integrated WebRTC audio/video calling.


OpenTalk
Open-source, GDPR-compliant video conferencing platform
OpenTalk is an open-source video conferencing platform offering GDPR-compliant SaaS and self-hosted deployments with features like recording, whiteboards, breakout rooms, polls and telephone dial-in.

Element
Matrix-based secure messaging and collaboration client
Element is a Matrix client for secure team messaging and collaboration, offering end-to-end encrypted chats and calls with interoperability across the Matrix network.





