Welcome to my WebRTC project repository! Here, I'll be experimenting with WebRTC and implementing various features to learn more about real-time communication over the web.
https://webrtc-sahilverma.netlify.app/
WebRTC (Web Real-Time Communication) is a powerful API that enables real-time communication directly between web browsers. It allows for peer-to-peer audio, video, and data sharing without the need for plugins or additional software.
In this project, I'll explore different aspects of WebRTC, including:
- Setting up a basic peer-to-peer connection
- Implementing audio and video streams
- Integrating data channels for non-media communication
- Exploring advanced features like screen sharing and file transfer
- Custom TURN server
- File transfer
- Group video chat with SFU
- Peer-to-peer audio and video communication under same network
-
Clone the Repository:
git clone https://github.com/sahilverma-dev/webrtc/
-
Install Packages:
Client (React Frontend):
cd webrtc/client npm install
Server (Node.js in TypeScript):
cd ../server npm install
-
Run the Application:
Client:
npm run dev
Server:
npm run dev
You may now access the application at the specified address in your browser.
-
Setup TURN server (optional) This step us only required if you're planning to host the project. Read this to setup your custom TURN Server.
- Email: sahilverma.webdev@gmail.com
- Portfolio: sahilverma.dev
- GitHub: @sahilverma-dev
- Twitter: @sahilverma_dev
- LinkedIn: sahilverma-dev