MeetSphere is a real-time video meeting web application built with React, Node.js, WebRTC, and Socket.io.
It allows users to create or join meetings, manage meeting history, and communicate over live video in a responsive interface.
- User registration and login
- Create and join video meetings
- Real-time video and audio communication using WebRTC and Socket.io
- Meeting history for logged-in users
- Responsive UI for desktop and mobile
- Chat during meetings
- Frontend: React, React Router, Material UI (MUI)
- Backend: Node.js, Express, Socket.io
- Database: MongoDB Atlas with Mongoose
- Deployment: Render
- Other: WebRTC, bcrypt, crypto
MeetSphere/
Backend/
app.js
controllers/
models/
routes/
package.json
frontend/
src/
public/
package.json
- Node.js (LTS)
- npm or yarn
- MongoDB Atlas or local MongoDB
git clone https://github.com/akshat1602/MeetSphere.git
cd MeetSpherecd Backend
npm installCreate a .env file inside Backend:
MONGO_URI=your-mongodb-connection-string
PORT=8080Run the backend:
npm run dev
# or
npm startThe backend will run on http://localhost:8080.
cd ../frontend
npm installCreate a .env file inside frontend:
REACT_APP_API_URL=http://localhost:8080Run the frontend:
npm startThe frontend will run on http://localhost:3000.
- Root Directory:
frontend - Build Command:
npm install && npm run build - Publish Directory:
build
- Root Directory:
Backend - Build Command:
npm install - Start Command:
npm start
Set environment variables in Render instead of committing production secrets to the repository.
- The live application is accessed through the frontend link.
- Backend configuration should be managed through environment variables in deployment.
- For local development, use
.envfiles in both frontend and backend.
- Replace deprecated WebRTC stream APIs with
addTrackandontrack - Improve meeting layout further for group calls
- Add better chat and participant management
- Improve code modularity by splitting large components