
- Complete NestJS TypeScript implementation with WebSocket support - Direct messaging (DM) and group chat functionality - End-to-end encryption with AES encryption and key pairs - Media file support (images, videos, audio, documents) up to 100MB - Push notifications with Firebase Cloud Messaging integration - Mention alerts and real-time typing indicators - User authentication with JWT and Passport - SQLite database with TypeORM entities and relationships - Comprehensive API documentation with Swagger/OpenAPI - File upload handling with secure access control - Online/offline status tracking and presence management - Message editing, deletion, and reply functionality - Notification management with automatic cleanup - Health check endpoint for monitoring - CORS configuration for cross-origin requests - Environment-based configuration management - Structured for Flutter SDK integration Features implemented: ✅ Real-time messaging with Socket.IO ✅ User registration and authentication ✅ Direct messages and group chats ✅ Media file uploads and management ✅ End-to-end encryption ✅ Push notifications ✅ Mention alerts ✅ Typing indicators ✅ Message read receipts ✅ Online status tracking ✅ File access control ✅ Comprehensive API documentation Ready for Flutter SDK development and production deployment.
1.4 KiB
1.4 KiB
Change Log
All notable changes to this project will be documented in this file.
[3.0.0]
Changed
- BREAKING:
jwt.verify
now requires analgorithm
parameter, andjws.createVerify
requires analgorithm
option. The"alg"
field signature headers is ignored. This mitigates a critical security flaw in the library which would allow an attacker to generate signatures with arbitrary contents that would be accepted byjwt.verify
. See https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/ for details.
2.0.0 - 2015-01-30
Changed
-
BREAKING: Default payload encoding changed from
binary
toutf8
.utf8
is a is a more sensible default thanbinary
because many payloads, as far as I can tell, will contain user-facing strings that could be in any language. (6b6de48
) -
Code reorganization, thanks @fearphage! (
7880050
)
Added
- Option in all relevant methods for
encoding
. For those few users that might be depending on abinary
encoding of the messages, this is for them. (6b6de48
)