A real-time chat application built with the MERN stack and WebSockets, designed for seamless communication through private chat rooms , persistent messages and instant messaging.
🔗 https://chat-frontend-ivory-eta.vercel.app
Connect is a full-stack real-time messaging platform where users can:
- Create private chat rooms
- Join rooms using a Room Name
- Send and receive messages instantly
- View previous chat history
- Manage your profile
- User registration and login
- Secure password hashing using bcrypt
- JWT-based authentication stored in cookies
- Protected routes for authorized users only
- Messages are saved in mogodb database
- Instant messaging with WebSockets
- Live updates without refreshing
- Room-based isolated conversations
- Create chat rooms
- Join existing rooms using room name
- Secure Signup and Login system
- Password hashing using bcrypt
- JWT-based authentication stored in cookies
- Protected routes for authenticated users only
- Login page
- SignUp page
- Sidebar navigation
- Create or Join chat rooms
- Home Page
- Generate a unique Room ID
- Share Room ID with friends instantly
- Join existing chat rooms using Room ID
- Send and receive messages instantly
- Messages persist in MongoDB
- WhatsApp-like chat interface
- Grouped messages with timestamps
- Update profile picture
- Edit user details
- React.js
- Node.js
- WebSocket (ws) library
git clone https://github.com/GitAditya404/chat.git
cd chatcd frontend
npm install
npm run devcd backend
npm install
npm startCreate a .env file in the backend folder:
PORT = 5000
MONGODb_URI = your_mongodb_connection_string
JWT_SECRET = your_secret_key