chat and video calling app
NOTE: This project is currently running on Render’s free tier, so the server may sleep when inactive.The first load can take a short time to initialize, after which performance is normal.
🛠️ Tech Stack
Frontend: React, Zustand, TanStack Query, Axios
Backend: Node.js, Express, Socket.io
Database: MongoDB + Mongoose
Real-Time: WebRTC + Socket Signaling
Auth: JWT
Deployment: Render.com
⭐ Key Features
- Real-time Chat with Socket.io (instant messaging with reply threading)
- Video & Audio Calling using WebRTC
- Screen Sharing during call sessions
- Friend Request System with accept/decline flow
- Customizable UI Themes (7 theme variations)
- JWT Authentication & Protected Routes
- State Management using Zustand
- Server & Client Communication via Axios & TanStack Query
- Optimized WebRTC Signaling for Reliable Media Streams
- Mobile & Desktop Responsive UI
🚀 Scalability & System Highlights
- Designed to handle millions of concurrent socket connections
- Horizontal scaling friendly with Redis or clustered processes
- Efficient MongoDB queries with Mongoose models
- WebRTC P2P media reduces server bandwidth usage
- Real-time delivery optimized for low latency communication