Live Site: ๐ click here
What is CoWatch?
CoWatch is an extension of my previous project, the YouTube clone, where I've taken the concept of collaborative video viewing to the next level. With CoWatch, users can seamlessly watch YouTube videos together with their friends while enjoying integrated video call and screen sharing features. It builds upon the foundation of the YouTube clone, enhancing the user experience with real-time interaction and shared enjoyment of content.
- Revolutionizing YouTube Viewing: CoWatch redefines how users engage with YouTube content, fostering collaborative experiences regardless of physical distance.
- Exploring the Intersection: This project explores the convergence of video streaming, real-time communication, and collaborative experiences, offering a unique blend of technology and interactivity.
- Playground for Experimentation: CoWatch serves as my experimental playground, allowing me to delve into cutting-edge technologies, refine my skills, and push the boundaries of what's possible in web development.
- Commitment to Continuous Improvement: By building CoWatch, I demonstrate my commitment to continuous learning and improvement as a developer, constantly seeking new challenges and opportunities for growth.
-
Real-Time Peer-to-Peer Connection:
- CoWatch utilizes WebRTC technology to establish peer-to-peer connections between users, ensuring low-latency and high-quality video streaming without the need for centralized servers. It allows users to interact and communicate with their friends while watching videos together
-
Screen Sharing Functionality:
- Users can share their screens with friends, enabling collaborative viewing of YouTube videos.
-
Dynamic Room Creation:
- Users can easily create new viewing rooms or join existing ones by simply entering a room ID, making it effortless to start watching videos with friends.
Building CoWatch has been an incredible learning journey for me, where I've had the opportunity to dive deep into several exciting technologies:
-
WebRTC: CoWatch leverages WebRTC (Web Real-Time Communication) to establish peer-to-peer video connections between users, enabling seamless video calls for real-time interaction.
-
MediaStream API: With the MediaStream API, CoWatch can access and manipulate audio and video streams from user devices, facilitating both video playback and screen sharing features.
-
PeerJS: I've integrated PeerJS, a JavaScript library built on top of WebRTC, to simplify the process of setting up peer connections and handling signaling between clients.
-
React & Recoil: CoWatch's frontend is powered by React, with Recoil managing state to ensure a smooth and responsive user experience.
-
Tailwind CSS: A highly customizable CSS framework for modern and responsive UIs.
-
YouTube Data API: Integrated the API for fetching and displaying YouTube video data.
- Clone the repository:
git clone https://github.com/vikasipar/CoWatch.git
- Install dependencies:
npm install
- Set up YouTube Data API credential.
npm run dev
Open http://localhost:5173 in your browser.