A real-time video calling application built with React, Node.js, Socket.IO, and WebRTC.
- Real-time video and audio calling
- Chat functionality during calls
- Room-based video calls
- Camera and microphone controls
- Responsive design
- Node.js (v14 or higher)
- npm or yarn
-
Clone the repository
git clone <repository-url> cd meet-video
-
Install server dependencies
cd server npm install -
Install client dependencies
cd ../client npm install -
Start the server
cd ../server npm startThe server will run on http://localhost:5000
-
Start the client
cd ../client npm startThe client will run on http://localhost:3000
The server uses a .env file with the following variables:
PORT: Server port (default: 5000)NODE_ENV: Environment (development/production)CLIENT_URL: Client URL for CORS
- Port Mismatch: Fixed client configuration to connect to correct server port (5000)
- Missing Environment File: Added
.envfile for server configuration - WebRTC Peer Connection Issues: Improved peer connection handling and stream management
- User Disconnection: Fixed user disconnection handling to properly remove participants
- Production Route Handling: Added proper production route handling for React app
- Open the application in your browser
- Enter your name and room ID (or generate a new one)
- Share the room ID with others to invite them
- Start your video call!
- Frontend: React, Socket.IO Client
- Backend: Node.js, Express, Socket.IO
- Real-time Communication: WebRTC, Socket.IO
- Styling: CSS