A modern real-time chat application built using React, Vite, Socket.IO, Node.js, and Express.js. The application enables users to communicate instantly through dynamic chat rooms with real-time message delivery and a responsive user interface.
- ⚡ Real-time messaging using Socket.IO
- 👥 Join and chat in custom rooms
- 📱 Responsive and user-friendly interface
- 🔄 Instant message synchronization
- 🟢 Online communication without page refresh
- 🎨 Modern React-based frontend
- ⚙️ Fast development and build process with Vite
- 🔌 Client-server architecture using WebSockets
- React.js
- Vite
- CSS / SCSS
- Socket.IO Client
- Node.js
- Express.js
- Socket.IO
- Git & GitHub
- npm
real-time-chat-app/
│
├── client/
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── App.jsx
│ │ └── main.jsx
│ └── package.json
│
├── server/
│ ├── index.js
│ └── package.json
│
└── README.mdgit clone https://github.com/your-username/real-time-chat-app.git
cd real-time-chat-appcd client
npm installcd ../server
npm installcd server
npm startcd client
npm run devFrontend will run on:
http://localhost:5173
Backend will run on:
http://localhost:5000
- Users enter a username and room name.
- The client establishes a Socket.IO connection with the server.
- Users joining the same room can exchange messages instantly.
- The server broadcasts messages to all connected users in that room.
- Messages are updated in real time without refreshing the page.
- User authentication
- Private messaging
- Message persistence with database
- Emoji support
- File and image sharing
- Read receipts
- Voice and video calling
- Dark mode
Contributions are welcome.
- Fork the repository
- Create a feature branch
git checkout -b feature/new-feature- Commit your changes
git commit -m "Add new feature"- Push to the branch
git push origin feature/new-feature- Open a Pull Request
This project is licensed under the MIT License.
Anshika
Interested in Full Stack Development, Artificial Intelligence, and Real-Time Web Applications.
⭐ If you found this project useful, consider giving it a star on GitHub.