Automated Action 545563e776 Implement comprehensive real-time chat API with NestJS
- 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.
2025-06-21 17:13:05 +00:00

4.2 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

v1.1.0 - 2024-12-12

Commits

  • [actions] split out node 10-20, and 20+ b4a46bb
  • [New] add types 5cb24eb
  • [Dev Deps] update @ljharb/eslint-config, auto-changelog, es-value-fixtures, object-inspect, tape e225ca0
  • [Refactor] use call-bound directly 9be3cd2
  • [Deps] update call-bind, is-regex 524b736
  • [Tests] replace aud with npm audit f3cd537
  • [Dev Deps] add missing peer dep 14da559

v1.0.3 - 2024-02-06

Commits

  • [Refactor] use es-errors, so things that only need those do not need get-intrinsic d6ba2f9
  • [Deps] update call-bind, get-intrinsic 5a3b1d7
  • [Dev Deps] update tape 75fb719

v1.0.2 - 2024-01-11

Commits

  • [meta] package.json sideEffects should be boolean 094bb88

v1.0.1 - 2024-01-09

Commits

  • [Tests] add nyc for coverage 7e3f525
  • [Dev Deps] update @ljharb/eslint-config, aud, npmignore, object-inspect, tape e7e0169
  • [actions] update rebase action 2962694
  • [readme] add testing badges; remove david-dm badges e9dfd83
  • [Dev Deps] update @ljharb/eslint-config, aud, object-inspect, tape 496fe99
  • [Deps] update call-bind, get-intrinsic d94c5ba
  • [meta] add missing engines.node f3d4711
  • [Deps] update get-intrinsic 0eeedd7
  • [meta] add sideEffects flag fe1655f

v1.0.0 - 2022-09-22

Commits