This project is a Zoom Clone that aims to replicate the basic functionalities of Zoom. It provides real-time video conferencing and chat features, built on Node.js and Express. The project begins with implementing real-time communication using WebSocket, followed by WebRTC for direct peer-to-peer communication, and finally integrates 1:1 video calls and chat functionality using socket.io.
- Backend: Node.js, Express
- Real-time Communication: WebSocket, WebRTC, Socket.io
Follow these steps to run the project locally.
- Clone the project:
git clone https://github.com/devkan/ZoomClone.git- Install dependencies:
cd ZoomClone
npm install- Start the server:
npm run devOnce the server is up, you can access the project at http://localhost:3000 by default.
- 1:1 Video Calls: Real-time 1:1 video calling feature between users.
- Real-time Chat: Ability to exchange messages in real-time during a video call.
- Real-time Data Streaming with WebRTC: High-quality audio and video streaming.
- WebSocket and Socket.io Communication: Efficient real-time messaging and communication.
Use WebSocket to establish a bi-directional communication channel between the server and the client. This enables the implementation of real-time chat functionality.
Utilize WebRTC to facilitate direct peer connections for exchanging real-time video and audio data between browsers.
Implement more reliable real-time communication using socket.io, offering 1:1 video call and chat functionalities between users.
If you would like to contribute to this project, please feel free to submit an issue or pull request. Suggestions for improvements or new features are always welcome.
This project is licensed under the MIT License. For more details, see the LICENSE file.