Skip to content

Real-time chat application built with MERN stack and Socket.io featuring JWT authentication, image sharing, and 32+ themes.

Notifications You must be signed in to change notification settings

omkarhole/Realtime-Chatapp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

28 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ’ฌ Realtime Chat App

A modern real-time messaging platform built with MERN stack & WebSockets

Features โ€ข Quick Start โ€ข Tech Stack โ€ข Key Highlights


โœจ Features

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

๐Ÿš€ Quick Start

# 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 2

๐Ÿ› ๏ธ Tech Stack

Frontend: React 19 โ€ข Vite โ€ข TailwindCSS โ€ข DaisyUI โ€ข Zustand โ€ข Socket.io-client

Backend: Node.js โ€ข Express 5 โ€ข Socket.io โ€ข MongoDB โ€ข Mongoose โ€ข JWT โ€ข Cloudinary


๐ŸŽฏ Key Highlights

  • 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

๐Ÿ“ Structure

โ”œโ”€โ”€ 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

๐Ÿ”ฎ Roadmap

  • Group chat & typing indicators
  • Voice messages & video calls
  • End-to-end encryption
  • Push notifications

๐Ÿค Contributing

  1. Fork โ†’ 2. Branch โ†’ 3. Commit โ†’ 4. PR

โญ Star this repo if helpful!
Made with โค๏ธ by Omkar Hole

About

Real-time chat application built with MERN stack and Socket.io featuring JWT authentication, image sharing, and 32+ themes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages