- A real-time chat application built using the MERN stack and Socket.IO. Features include user authentication, one-to-one messaging, online status tracking, message seen indicators, image sharing, and real-time updates. The application follows RESTful API architecture and uses JWT for secure authentication.
- π User authentication using JWT
- π¬ Real-time one-to-one messaging
- π’ Online / Offline user status
- ποΈ Message seen indicators
- πΌοΈ Image sharing in chat
- β° Message timestamps
- π± Responsive UI
- π Real-time updates without page refresh
------ Tech Stack -----
- React.js
- Context API
- Axios
- Tailwind CSS
- Node.js
- Express.js
- MongoDB & Mongoose
- Socket.IO
- JWT Authentication
βββ client β βββ src β β βββ components β β βββ context β β βββ pages β β βββ utils β β βββ App.jsx β βββ server β βββ controllers β βββ middleware β βββ models β βββ routes β βββ socket β βββ server.js β βββ README.md
1οΈβ£ Clone the repository --
git clone https://github.com/Vikashh78/Quick-Chat-.git cd Quick-Chat-
cd server npm install
Create a .env file in the server folder: PORT=8000 MONGO_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret
Start the backend server:
npm run start
cd client npm install npm run dev
Socket.IO is used to handle: Live message delivery Online/offline user tracking Real-time UI updates