added readme file
Signed-off-by: heyhiru <hirentimbadiya74@gmail.com>
Este commit está contenido en:
90
README.md
Archivo normal
90
README.md
Archivo normal
@@ -0,0 +1,90 @@
|
|||||||
|
# VideoPeers - Real Time P2P Video Chat Application
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
This is a real time video chat application built using WebRTC, Socket.io, Node.js, Express.js, and Next.js. It allows users to create a room and share the room ID with other users to join the room for a peer-to-peer video call.
|
||||||
|
|
||||||
|
|
||||||
|
## Key Features
|
||||||
|
|
||||||
|
- [x] Create and join video chat rooms using room IDs
|
||||||
|
- [x] Real-time peer-to-peer video calling using WebRTC
|
||||||
|
- [x] Audio mute/unmute controls
|
||||||
|
- [x] Video Hold/Play controls
|
||||||
|
- [x] Call End option
|
||||||
|
- [x] Responsive Design
|
||||||
|
- [x] Built with Next.js, Node.js, Express, Socket.io
|
||||||
|
|
||||||
|
## Technologies used / Prerequisites Of The Project
|
||||||
|
|
||||||
|
- [Next.js](https://nextjs.org/) - React framework
|
||||||
|
- [WebRTC](https://webrtc.org/) - Real-time communication
|
||||||
|
- [Socket.io](https://socket.io/) - Bidirectional communication
|
||||||
|
- [Node.js](https://nodejs.org/) - Backend runtime
|
||||||
|
- [Express](https://expressjs.com/) - Node.js framework
|
||||||
|
- [Tailwind CSS](https://tailwindcss.com/) - Styling
|
||||||
|
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
1. Clone the repository
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/hirentimbadiya/Video-Peers.git
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Install dependencies for Client Side
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd client #in Video-Peers/client
|
||||||
|
npm install
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Install dependencies for Server Side
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd server #in Video-Peers/server
|
||||||
|
npm install
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Run the application
|
||||||
|
|
||||||
|
- Run the client side
|
||||||
|
```bash
|
||||||
|
cd client #in Video-Peers/client
|
||||||
|
npm run dev
|
||||||
|
```
|
||||||
|
- Run the server side
|
||||||
|
```bash
|
||||||
|
cd server #in Video-Peers/server
|
||||||
|
npm run dev
|
||||||
|
```
|
||||||
|
|
||||||
|
## Video Demo
|
||||||
|
|
||||||
|
|
||||||
|
## Future Scope
|
||||||
|
|
||||||
|
- Text chat support in rooms
|
||||||
|
- Screen Sharing Feature
|
||||||
|
- Multiple Participants in a room
|
||||||
|
- Video recording option
|
||||||
|
|
||||||
|
|
||||||
|
## My Learnings
|
||||||
|
|
||||||
|
By Building this project I learned about the following concepts:
|
||||||
|
|
||||||
|
- WebRTC (Web Real-Time Communication) is a technology that enables real-time peer-to-peer communication between browsers and mobile applications. It is an open-source and free project that used to provide web browsers and mobile applications with real-time communication (RTC) via simple application programming interfaces (APIs).
|
||||||
|
|
||||||
|
- Socket.IO is a library that enables real-time, bidirectional and event-based communication between the browser and the server. It consists of: a Node.js server: Source | API. a Javascript client library for the browser (which can be also run from Node.js): Source | API.
|
||||||
|
|
||||||
|
- Next.js is a React framework that enables several server-side rendering (SSR) features such as static site generation (SSG), automatic code splitting, server-side rendering, and client-side routing. It is a framework that is built on top of React.js and Node.js.
|
||||||
|
|
||||||
|
|
||||||
|
## License
|
||||||
|
[MIT](https://choosealicense.com/licenses/mit/)
|
||||||
|
|
||||||
|
## Author
|
||||||
|
- [hirentimbadiya](https://github.com/hirentimbadiya)
|
||||||
|
- Email : hirentimbadiya74@gmail.com
|
||||||
Referencia en una nueva incidencia
Block a user