This project is a real-time web application that allows multiple users to watch YouTube videos together in perfect sync, no matter where they are. The application uses WebSocket technology to synchronize video playback across devices with zero lag and shared playback controls. Whether it's for virtual movie nights, study groups, or team presentations, this project offers a seamless shared viewing experience!
- Real-time synchronization: Watch YouTube videos together in perfect sync.
- Shared playback controls: Actions like play, pause, and seek are synced for all users.
- Speed adjustment: Control playback speed for all connected users.
- Live user tracking: See whoโs in the room in real-time.
- Easy room creation: Generate unique Room IDs and invite friends to join with a simple link.
- Frontend: React
- Backend: Node.js, Express.js
- Real-time Communication: Socket.io
- Video Playback: YouTube IFrame API
- Create a Room: A user shares a YouTube link, and a Room ID is generated.
- Join the Room: Others can join by entering the Room ID.
- Sync Playback: Once in the room, playback actions like play, pause, and seek are broadcasted to all connected users, ensuring everyone stays perfectly synced.
- Real-time Communication: WebSocket technology keeps the server and clients connected with a two-way handshake to update all users instantly.
- ๐ฌ Virtual Movie Nights
- ๐ Online Study Sessions
- ๐ผ Team Presentations
- ๐ Virtual Workshops
Make sure you have the following installed:
- Node.js: Download here
- npm: Comes with Node.js
- Clone the repository:
git clone https://github.com/Priyansurout/youtube_syn.git
- Navigate to the project directory:
cd youtube_syn
- Install dependencies:
npm install
- Start the server:
npm start
- Open your browser and go to
http://localhost:3000
to view the app.
/client
: Contains the React frontend code./server
: Contains the Express.js backend code, including Socket.io setup./public
: Static assets and configuration files.
Feel free to submit issues, feature requests, or contribute to this project. Contributions and stars are highly appreciated! ๐
This project is licensed under the MIT License - see the LICENSE file for details.
Feel free to reach out for any feedback or questions! ๐
Project Link: https://github.com/Priyansurout/youtube_syn