How yrpyash22/video-call-app works
This is a browser-based video-calling app with account registration/login, room-based calls, real-time signaling and chat, and meeting history. The main workflow runs from the React app through authentication and room entry, then uses Socket.IO to coordinate WebRTC peer connections and media streams. Account and meeting-history requests are handled by the Express API and persisted through Mongoose. The README documents the broader feature set; sampled source supports the auth, history, signaling, chat, and media paths shown here, but not detailed behavior for every page.
Main entry points: App.jsx React App · VideoMeet.jsx Meeting UI · AuthContext.jsx Auth Context · socketManage.js Socket Signaling
Components 16
Web Client
- React App
frontend/src/App.jsx - Sign In / Up
frontend/src/pages/authentication.jsx - Auth Context
frontend/src/contexts/AuthContext.jsx - Home Page
frontend/src/pages/home.jsx - History Page
frontend/src/pages/history.jsx - Meeting UI
frontend/src/pages/VideoMeet.jsx
Account API
- Express Server
backend/src/app.js - User Routes
backend/src/routes/user.routes.js - User Controller
backend/src/controllers/user.controller.js - User Model
backend/src/models/userModel.js - Meeting Model
backend/src/models/meetingModel.js
Call Realtime
- Socket Signaling
backend/src/controllers/socketManage.js
Other components
- Caller
- Browser Media
- MongoDB
- Other Call Peers
Connections 21
- Caller → React App: uses
- React App → Sign In / Up: routes to
- React App → Home Page: routes to
- React App → History Page: routes to
- React App → Meeting UI: routes to
- Sign In / Up → Auth Context: invokes auth
- Home Page → Auth Context: uses auth
- History Page → Auth Context: uses history
- Auth Context → Express Server: HTTP requests
- Express Server → User Routes: mounts routes
- User Routes → User Controller: dispatches
- User Controller → User Model: reads/writes users
- User Controller → Meeting Model: reads/writes history
- User Model → MongoDB: persists users
- Meeting Model → MongoDB: persists meetings
- Express Server → Socket Signaling: starts socket server
- Meeting UI → Socket Signaling: joins / signals / chats
- Socket Signaling → Other Call Peers: dispatches events
- Other Call Peers → Socket Signaling: sends events
- Meeting UI → Browser Media: requests media
- Meeting UI → Other Call Peers: WebRTC media