A modern, feature-rich chat application built with Node.js, Express, and Socket.IO for seamless real-time communication.
- Real-time Messaging - Instant message delivery with Socket.IO
- Group Chat - Create and manage group conversations
- User Authentication - Secure signup/login with JWT
- Member Management - Add/remove members, assign admin roles
- File Sharing - Support for multimedia attachments
- Search Functionality - Find and add users to groups
- Responsive Design - Clean, modern UI
Backend:
- Node.js & Express
- Socket.IO (real-time communication)
- Sequelize ORM with MySQL
- JWT Authentication
- Multer (file uploads)
Frontend:
- Vanilla JavaScript
- HTML5 & CSS3
- Socket.IO Client
# Install dependencies
npm install
# Start development server
npm startThe app runs on http://localhost:3000 by default.
├── controllers/ # Route handlers
├── models/ # Database models
├── routes/ # API routes
├── middlewares/ # Auth middleware
├── public/ # Frontend assets
├── Services/ # Business logic
└── socket.js # Socket.IO setup
Create a .env file with:
PORT=3000
DB_HOST=your_database_host
DB_USER=your_database_user
DB_PASSWORD=your_password
DB_NAME=chat_app
JWT_SECRET=your_jwt_secret
POST /signup- User registrationPOST /login- User authenticationPOST /sendMessage- Send messagesGET /getMessages- Fetch chat historyPOST /makeGroup- Create groupsPOST /addMember- Add members to groupsGET /search- Search users
Built with 💌 by Rushabh



