A scalable real-time video conferencing platform supporting 40–50 concurrent users
🌐 Live App: video-connect-beryl.vercel.app
- HD Video Calling — Real-time video conferencing with up to 50 users
- Audio/Video Toggle — Mute/unmute mic and turn camera on/off
- Screen Sharing — Share your screen with all participants
- Group Chat — Real-time chat sidebar with Socket.io
- Shareable Room Codes — Create rooms with unique codes and share instantly
- SFU Architecture — Uses LiveKit SFU for scalable media routing (no P2P bottleneck)
- Secure — JWT-based token authentication for room access
- Responsive — Works on desktop and mobile browsers
| Layer | Technology |
|---|---|
| Frontend | React.js, LiveKit Components, CSS3 |
| Backend | Node.js, Express.js |
| Real-time Communication | WebRTC, LiveKit SFU |
| Chat | Socket.io |
| Authentication | LiveKit JWT Tokens |
| Frontend Deployment | Vercel |
| Backend Deployment | Railway |
- Node.js v18+
- A free LiveKit Cloud account
git clone https://github.com/AayushiMohan/VideoConnect.git
cd VideoConnectcd server
npm installCreate a .env file in the server folder:
LIVEKIT_API_KEY=your_api_key
LIVEKIT_API_SECRET=your_api_secret
LIVEKIT_URL=wss://your-project.livekit.cloud
PORT=5000Start the server:
node index.jscd client
npm install
npm startVisit http://localhost:3000 in your browser 🎉
VideoConnect/
├── client/ # React Frontend
│ └── src/
│ ├── App.js # Home page — create/join room
│ ├── Room.jsx # Video call screen
│ ├── Chat.jsx # Real-time chat sidebar
│ └── App.css # Styling
│
└── server/ # Node.js Backend
├── index.js # Express + Socket.io + LiveKit token API
└── package.json
User creates/joins room
↓
Backend generates LiveKit JWT token
↓
Frontend connects to LiveKit SFU
↓
SFU routes media streams to all participants
↓
Socket.io handles real-time chat messages
↓
Everyone sees and chats with everyone ✅
- ✅ Deploy on Vercel + Railway
- Participant list panel
- Raise hand feature
- Meeting recording
- Breakout rooms
- AI meeting summary using Claude API
Built by Aayushi Mohan — Free to use, open source 🚀