About the project
A real-time messaging app built on Node.js. Users sign up and log in through an authentication REST API, then connect to the chat server with Socket.io.
Security is the main focus: passwords are hashed with bcrypt before being stored in MongoDB, and every WebSocket connection must carry a valid JSON Web Token. Connections without a verified token are rejected right in the Socket.io middleware.
Sent messages are broadcast to every connected user along with the sender's identity.
Key features
- Sign-up and login through a REST API (/api/auth)
- Passwords hashed with bcrypt
- Socket.io middleware that verifies the JWT on every connection
- Real-time message broadcast to all connected users
- User data stored in MongoDB with Mongoose
Releases
There is no official release for this project yet. The latest code is always available in the GitHub repository.