Watch Together,
Anywhere
Host synchronized YouTube watch parties with real-time chat, video controls, and seamless playback synchronization across all viewers.
Get started in minutes
Set up your own watch party instance with just a few steps
Install dependencies
Clone the repository and install dependencies using your preferred package manager.
Configure Redis connection
Create a
.env.local file with your Redis connection URL. You can use a local Redis instance or a hosted service like Upstash.Start the development server
Run the custom Next.js server that includes Socket.IO for real-time communication.Open
http://localhost:3000 in your browser to access the application.Explore by topic
Learn about the core features that power Watch N Chill
Synchronized playback
Host controls play, pause, and seek with automatic synchronization across all viewers using periodic sync checks
Room system
Create rooms with short IDs, join as host or guest, with automatic cleanup and Redis-backed persistence
Real-time chat
Live chat per room with typing indicators and persistent message history stored in Redis
Host controls
Promote guests to host, manage video playback, and control room settings with automatic host handoff
Deployment guides
Deploy Watch N Chill to production with Docker, cloud platforms, or bare metal
Environment variables
Configure Redis, CORS origins, and rate limiting settings
Local development
Set up your local environment with Node.js and Redis
Docker deployment
Run Watch N Chill with Docker Compose for easy containerized deployment
Architecture deep dive
Understand how Watch N Chill synchronizes video playback in real-time
Architecture overview
High-level system design and component interactions
Backend services
Socket.IO event handlers, Redis repositories, and rate limiting
Frontend hooks
React hooks for room management, video sync, and chat
Real-time sync
How video synchronization works across multiple clients
Ready to build your watch party?
Start with our quickstart guide or explore the API reference to integrate Watch N Chill into your application.