
- 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.
50 lines
1.4 KiB
JSON
50 lines
1.4 KiB
JSON
{
|
|
"name": "statuses",
|
|
"description": "HTTP status utility",
|
|
"version": "2.0.1",
|
|
"contributors": [
|
|
"Douglas Christopher Wilson <doug@somethingdoug.com>",
|
|
"Jonathan Ong <me@jongleberry.com> (http://jongleberry.com)"
|
|
],
|
|
"repository": "jshttp/statuses",
|
|
"license": "MIT",
|
|
"keywords": [
|
|
"http",
|
|
"status",
|
|
"code"
|
|
],
|
|
"files": [
|
|
"HISTORY.md",
|
|
"index.js",
|
|
"codes.json",
|
|
"LICENSE"
|
|
],
|
|
"devDependencies": {
|
|
"csv-parse": "4.14.2",
|
|
"eslint": "7.17.0",
|
|
"eslint-config-standard": "14.1.1",
|
|
"eslint-plugin-import": "2.22.1",
|
|
"eslint-plugin-markdown": "1.0.2",
|
|
"eslint-plugin-node": "11.1.0",
|
|
"eslint-plugin-promise": "4.2.1",
|
|
"eslint-plugin-standard": "4.1.0",
|
|
"mocha": "8.2.1",
|
|
"nyc": "15.1.0",
|
|
"raw-body": "2.4.1",
|
|
"stream-to-array": "2.3.0"
|
|
},
|
|
"engines": {
|
|
"node": ">= 0.8"
|
|
},
|
|
"scripts": {
|
|
"build": "node scripts/build.js",
|
|
"fetch": "node scripts/fetch-apache.js && node scripts/fetch-iana.js && node scripts/fetch-nginx.js && node scripts/fetch-node.js",
|
|
"lint": "eslint --plugin markdown --ext js,md .",
|
|
"test": "mocha --reporter spec --check-leaks --bail test/",
|
|
"test-ci": "nyc --reporter=lcov --reporter=text npm test",
|
|
"test-cov": "nyc --reporter=html --reporter=text npm test",
|
|
"update": "npm run fetch && npm run build",
|
|
"version": "node scripts/version-history.js && git add HISTORY.md"
|
|
}
|
|
}
|