
- 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.
68 lines
1.7 KiB
JSON
68 lines
1.7 KiB
JSON
{
|
|
"name": "formidable",
|
|
"version": "2.1.5",
|
|
"license": "MIT",
|
|
"description": "A node.js module for parsing form data, especially file uploads.",
|
|
"homepage": "https://github.com/node-formidable/formidable",
|
|
"funding": "https://ko-fi.com/tunnckoCore/commissions",
|
|
"repository": "node-formidable/formidable",
|
|
"main": "./src/index.js",
|
|
"files": [
|
|
"src"
|
|
],
|
|
"publishConfig": {
|
|
"access": "public",
|
|
"tag": "v2-latest"
|
|
},
|
|
"scripts": {
|
|
"bench": "node benchmark",
|
|
"fmt": "yarn run fmt:prepare '**/*'",
|
|
"fmt:prepare": "prettier --write",
|
|
"lint": "yarn run lint:prepare .",
|
|
"lint:prepare": "eslint --cache --fix --quiet --format codeframe",
|
|
"reinstall": "rm -rf ./node_modules ./yarn.lock",
|
|
"postreinstall": "yarn setup",
|
|
"setup": "yarn",
|
|
"pretest": "rm -rf ./test/tmp && mkdir -p ./test/tmp",
|
|
"test:local": "jest --coverage",
|
|
"pretest:ci": "yarn run pretest",
|
|
"test": "nyc jest --coverage"
|
|
},
|
|
"dependencies": {
|
|
"@paralleldrive/cuid2": "^2.2.2",
|
|
"dezalgo": "^1.0.4",
|
|
"once": "^1.4.0",
|
|
"qs": "^6.11.0"
|
|
},
|
|
"devDependencies": {
|
|
"@tunnckocore/prettier-config": "1.3.8",
|
|
"eslint": "6.8.0",
|
|
"eslint-config-airbnb-base": "14.1.0",
|
|
"eslint-config-prettier": "6.11.0",
|
|
"eslint-plugin-import": "2.20.2",
|
|
"eslint-plugin-prettier": "3.1.3",
|
|
"express": "4.17.1",
|
|
"husky": "4.2.5",
|
|
"jest": "27.2.4",
|
|
"koa": "2.11.0",
|
|
"nyc": "15.0.1",
|
|
"prettier": "2.0.5",
|
|
"prettier-plugin-pkgjson": "0.2.8",
|
|
"request": "2.88.2",
|
|
"supertest": "4.0.2"
|
|
},
|
|
"jest": {
|
|
"verbose": true
|
|
},
|
|
"keywords": [
|
|
"multipart",
|
|
"form",
|
|
"data",
|
|
"querystring",
|
|
"www",
|
|
"json",
|
|
"ulpoad",
|
|
"file"
|
|
]
|
|
}
|