This project is a full-stack real-time chat web application developed using the MERN stack (MongoDB, Express.js, React.js, Node.js) integrated with Socket.io for real-time, event-based communication.
Key Features:
User Authentication: Secure signup/login system using JWT (JSON Web Tokens) and bcrypt for password hashing.
Real-Time Messaging: Instant sending and receiving of messages using WebSocket protocol via Socket.io.
Group Chats & Private Chats: Ability to create group conversations as well as one-on-one private chats.
Responsive Frontend: Built with React.js and styled for smooth UI/UX across different devices.
Persistent Data Storage: MongoDB database stores user details, chat histories, and session information.
Error Handling and Optimizations: Implemented backend and frontend validations with proper loading states and error messages.
Tech Stack:
Frontend: React.js, Axios, Socket.io-client
Backend: Node.js, Express.js, Socket.io-server
Database: MongoDB Atlas
Authentication: JWT, bcrypt.js
Learning Highlights:
Through this project, I strengthened my understanding of real-time systems, asynchronous event handling, RESTful API development, and full-stack integration. Additionally, it gave me hands-on experience working with WebSocket connections and deploying a complete application.
Credits:
Special thanks to Codesistency (YouTube) for the structured learning path and practical guidance.