A modern real-time messaging platform built with MERN stack & WebSockets
Features โข Quick Start โข Tech Stack โข Key Highlights
| Category | Highlights |
|---|---|
| ๐ Auth | JWT authentication, bcrypt hashing, protected routes |
| ๐ฌ Messaging | Real-time delivery, online status, image sharing |
| ๐จ UI/UX | 32+ themes, responsive design, skeleton loading |
| โก Performance | Zustand (2KB), Vite builds, WebSocket efficiency |
# Clone & install
git clone https://github.com/omkarhole/Realtime-Chatapp.git
cd Realtime-Chatapp
cd backend && npm install
cd ../frontend && npm install
# Configure backend/.local.env
PORT=5001
MONGODB_URI=your_mongodb_uri
JWT_SECRET=your_secret
CLOUDINARY_CLOUD_NAME=your_cloud_name
CLOUDINARY_API_KEY=your_key
CLOUDINARY_API_SECRET=your_secret
# Run
cd backend && npm run dev # Terminal 1
cd frontend && npm run dev # Terminal 2Frontend: React 19 โข Vite โข TailwindCSS โข DaisyUI โข Zustand โข Socket.io-client
Backend: Node.js โข Express 5 โข Socket.io โข MongoDB โข Mongoose โข JWT โข Cloudinary
- Real-time Architecture โ WebSocket-based bidirectional communication for instant messaging
- Scalable Design โ Modular MVC pattern with separation of concerns
- Modern Auth Flow โ JWT tokens with HTTP-only cookies for security
- Cloud Integration โ Cloudinary CDN for optimized image delivery
- State Management โ Zustand for minimal bundle size (2KB vs Redux 42KB)
- Production Ready โ Serves static frontend from Express in production mode
โโโ backend/src/
โ โโโ controllers/ # Auth & message logic
โ โโโ models/ # User & message schemas
โ โโโ routes/ # API endpoints
โ โโโ lib/ # Socket.io, DB, utils
โ โโโ middleware/ # JWT protection
โ
โโโ frontend/src/
โ โโโ components/ # Chat UI components
โ โโโ pages/ # Route pages
โ โโโ store/ # Zustand stores
โ โโโ lib/ # Axios, utilities
- Group chat & typing indicators
- Voice messages & video calls
- End-to-end encryption
- Push notifications
- Fork โ 2. Branch โ 3. Commit โ 4. PR
โญ Star this repo if helpful!
Made with โค๏ธ by Omkar Hole