A full-stack real-time chat application built using the MERN stack with modern technologies like Socket.io, JWT Authentication, Zustand, and now fully Dockerized using Docker & Docker Compose π³.
π Live Demo: https://chat-app-uiqr.onrender.com
- Secure login/signup using JWT
- Instant messaging powered by Socket.io
- See who is online in real-time
- Managed efficiently using Zustand
- Robust error handling on both client & server
- Built with TailwindCSS + DaisyUI
- Dockerized frontend & backend services
- Multi-container setup using Docker Compose
- Fully deployed on Render
- React.js
- Zustand
- TailwindCSS
- DaisyUI
- Node.js
- Express.js
- MongoDB
- Socket.io
- JWT Authentication
- Docker
- Docker Compose
- Render
frontend/ β React Frontend
backend/ β Node.js + Express Backend
docker-compose.ymlgit clone https://github.com/your-username/CHAT_APP.git
cd CHAT_APPcd backend
npm install
npm run devcd frontend
npm install
npm run devdocker compose up --builddocker compose downCreate a .env file inside the backend folder:
PORT=5000
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_secret_key- Implemented real-time communication using WebSockets
- Understood JWT-based authentication flow
- Managed global state with Zustand
- Learned Docker & Docker Compose
- Worked with multi-container applications
- Improved debugging and deployment workflow
- Understood full-stack deployment on Render
Contributions are welcome! Feel free to fork this repo and improve it.
If you have any questions or suggestions, feel free to reach out.
β If you like this project, give it a star!