A real-time platform for coding interview practice and collaboration.
Video calls, live collaborative code editing, and DSA practice — built for developers preparing for technical interviews.
⚠️ Since this app is hosted on Render's free tier, the live demo may take up to a minute to spin up on first load.
CodeConnect is a full-stack web application that streamlines interview preparation and collaboration for developers. It brings together real-time video, a shared code editor, and DSA practice in one interactive environment, so users can practice mock interviews or pair-program with others as if they were in the same room.
- 🎥 Real-time video calls — powered by WebRTC for peer-to-peer audio/video during sessions
- ⌨️ Collaborative code editor — write and edit code together in real time via Socket.IO
- 🧠 DSA practice — built-in space for practicing data structures & algorithms problems
- 🔐 Secure authentication — JWT-based auth protecting user sessions and routes
- 👥 Role-based access — separate flows for recruiters, interviewers, and candidates
- 📅 Interview scheduling — coordinate and manage interview sessions
- 🔌 REST API backend — Express + MongoDB powering user data, sessions, and scheduling
| Layer | Technology |
|---|---|
| Frontend | React.js |
| Backend | Node.js + Express.js |
| Database | MongoDB |
| Real-time Communication | Socket.IO, WebRTC |
| Authentication | JWT |
| Deployment | Render |
┌──────────────┐ REST API ┌───────────────────┐ ┌───────────────┐
│ React UI │ ────────────▶ │ Express Backend │ ─────▶ │ MongoDB │
│ (Interview │ │ (Auth, Sessions, │ │ (Users, │
│ Rooms, DSA) │ ◀──────────── │ Scheduling) │ ◀───── │ Interviews) │
└──────┬───────┘ └─────────┬──────────┘ └───────────────┘
│ │
│ Socket.IO (code sync) │
└─────────────────┬────────────────┘
│
┌──────▼──────┐
│ WebRTC │
│ (video/audio│
│ peer link) │
└─────────────┘
CodeConnect/
├── backend/
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ ├── middlewares/
│ └── ...
├── frontend/
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ └── ...
│ └── package.json
├── index.js
├── package.json
└── README.md
- Node.js (v18+ recommended)
- MongoDB (local or Atlas)
git clone https://github.com/Coderencrypt/CodeConnect.git
cd CodeConnectcd backend
npm installCreate a .env file in backend/:
PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
FRONTEND_URL=http://localhost:5173Run the backend:
npm run devcd ../frontend
npm install
npm run devThe app should now be running locally, with the frontend talking to your local backend.
Try it here: codeconnect-1-h9vi.onrender.com
- Recorded interview playback
- Interview feedback & scoring system
- More DSA problem categories with difficulty filters
- Interviewer analytics dashboard
Contributions, issues, and feature requests are welcome. Feel free to check the issues page.
Distributed under the MIT License. See LICENSE for more information.
Ayush Dubey
- GitHub: @Coderencrypt
- LinkedIn: ayush-dubey-1348ay
