Simple websocket-based chat.
- ✅ Sessions (JWT token)
- ✅ Sending/Receiving messages
- ✅ Restoring old messages
- ✅ Notifications:
- about user disconnection
- 'delivered/read' message status
- about new user joining the chat
- etc
- ✅ No users with the same username online
- ❌ Authentication with passwords =) it's for demo purpose
- ✅ Handling and tracking unexpected activity:
- unexpected message events
- unexpected message schemas
- ❌ CORS restrictions (to make possible to connect from everywhere and test)
- ❌ Rate limitation (per session, per IP, etc)
- ❌ Payload size restrictions
- ❌ Authentication before WS connection is established (X-Auth-Token)
...
- ❌ SSL