Skip to content

React-WebRTC-MultiCamScreenShare is an innovative web application that leverages WebRTC technology to enable simultaneous multiple webcam and screen sharing sessions. This project is built with React and Socket.IO, providing a seamless and real-time collaborative experience.

License

Notifications You must be signed in to change notification settings

abrajByte/React-WebRTC-MultiCamScreenShare

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

React WebRTC Multi-Peer Connection with Multi Webcam and Multi Screen Share.

Multi-peer connections with React WebRTC, featuring multiple webcams and screen sharing capabilities, along with chat functionalities, session leave and end options using RTC DataChannel.

Here is a cool demonstration of the feature:

Demo Video

Watch the video

Overview

This project is a React application built with TypeScript that utilizes WebRTC technology for establishing multi-peer connections. It includes features for multi-webcam streaming and multi-screen sharing using WebRTC for real-time communication.

Key Features

  • Multi-Peer Connection: Establish direct peer-to-peer connections between multiple clients.
  • Multi-Webcam Support: Stream video from multiple webcams simultaneously.
  • Multi-Screen Share: Share screens from multiple clients in real-time.
  • RTC-Datachannel: Employs RTC DataChannel for messaging and other real-time signaling communications, such as session leave or end session for everyone.
  • Signaling: Socket.IO is used for sending offers and answers in this project. Other signaling methods, such as WebSocket, REST APIs, or SIP (Session Initiation Protocol), can also be employed.

Installation

Follow these steps to set up and run the project locally.

Prerequisites

  • Node.js (v14.x or higher)
  • npm (v6.x or higher) or yarn (v1.x or higher)
  • Git

Clone the Repository

git clone https://github.com/justpingme/React-WebRTC-MultiCamScreenShare.git
cd React-WebRTC-MultiCamScreenShare

Navigate to client directory and Install client-side dependencies

cd client
npm install 

Open New terminal

Navigate to server directory and Install server-side dependencies

cd server
npm install

Getting Started

Starting the Server

From the server directory

npm run dev

Starting the Client

From the client directory

npm start

Feel free to customize this template further based on your specific project details, branding, or additional features you may want to highlight. Adjust the folder structure section to accurately reflect your project's organization.

Contributing Contributions are welcome! Feel free to fork the repository and submit pull requests to propose improvements or additional features.

License This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements

  • WebRTC: Real-time communication protocol for peer-to-peer applications.
  • React: JavaScript library for building user interfaces.
  • Socket.IO: Real-time bidirectional event-based communication library.

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

React-WebRTC-MultiCamScreenShare is an innovative web application that leverages WebRTC technology to enable simultaneous multiple webcam and screen sharing sessions. This project is built with React and Socket.IO, providing a seamless and real-time collaborative experience.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages