https://github.com/srivardhan0909/talknest
A feature-rich real-time chat application
https://github.com/srivardhan0909/talknest
expressjs mongodb node-js reactjs socket-io
Last synced: 4 months ago
JSON representation
A feature-rich real-time chat application
- Host: GitHub
- URL: https://github.com/srivardhan0909/talknest
- Owner: srivardhan0909
- Created: 2025-02-02T18:29:21.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-02T18:35:16.000Z (over 1 year ago)
- Last Synced: 2025-05-21T22:41:46.330Z (about 1 year ago)
- Topics: expressjs, mongodb, node-js, reactjs, socket-io
- Language: JavaScript
- Homepage:
- Size: 118 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Real-time Chat Application
A feature-rich real-time chat application built with the MERN stack (MongoDB, Express.js, React.js, Node.js), Socket.io, and modern styling libraries.
## 🌟 Features
- Real-time messaging using Socket.io
- User authentication and authorization with JWT
- Responsive UI with Tailwind CSS
- Online user status tracking
- Global state management using Zustand
- Comprehensive error handling
- Professional deployment configuration
## 🚀 Tech Stack
- **Frontend:**
- React.js
- TailwindCSS
- Socket.io-client
- Zustand
- **Backend:**
- Node.js
- Express.js
- MongoDB
- Socket.io
- JSON Web Tokens
## 🛠️ Installation Steps
1. Clone the repository
```bash
git clone https://github.com/yourusername/realtime-chat-app.git
```
2. Change the working directory
```bash
cd realtime-chat-app
```
3. Install dependencies
```bash
npm install
```
4. Create `.env` file in root and add your variables
```env
PORT=5000
MONGO_DB_URI=your_mongodb_uri
JWT_SECRET=your_jwt_secret
NODE_ENV=development
```
5. Run the app
```bash
npm run dev
```
## 🏗️ Building for Production
1. Create a production build
```bash
npm run build
```
2. Start the production server
```bash
npm start
```
## 💻 Usage
1. Register a new account or login with existing credentials
2. Start chatting with online users in real-time
3. View online/offline status of other users
4. Enjoy seamless real-time communication!
## 📝 Environment Variables
The following environment variables are required for the application to run:
| Variable | Description |
| -------- | ----------- |
| PORT | Port number for the server |
| MONGO_DB_URI | MongoDB connection string |
| JWT_SECRET | Secret key for JWT authentication |
| NODE_ENV | Development/Production environment |
## 🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
1. Fork the project
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
## 📜 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details
## 🙏 Acknowledgments
- Socket.io documentation
- MongoDB documentation
- TailwindCSS community
## ⭐ Show your support
Give a ⭐️ if this project helped you!