
- 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.
83 lines
1.9 KiB
JSON
83 lines
1.9 KiB
JSON
{
|
|
"name": "minipass",
|
|
"version": "7.1.2",
|
|
"description": "minimal implementation of a PassThrough stream",
|
|
"main": "./dist/commonjs/index.js",
|
|
"types": "./dist/commonjs/index.d.ts",
|
|
"type": "module",
|
|
"tshy": {
|
|
"selfLink": false,
|
|
"main": true,
|
|
"exports": {
|
|
"./package.json": "./package.json",
|
|
".": "./src/index.ts"
|
|
}
|
|
},
|
|
"exports": {
|
|
"./package.json": "./package.json",
|
|
".": {
|
|
"import": {
|
|
"types": "./dist/esm/index.d.ts",
|
|
"default": "./dist/esm/index.js"
|
|
},
|
|
"require": {
|
|
"types": "./dist/commonjs/index.d.ts",
|
|
"default": "./dist/commonjs/index.js"
|
|
}
|
|
}
|
|
},
|
|
"files": [
|
|
"dist"
|
|
],
|
|
"scripts": {
|
|
"preversion": "npm test",
|
|
"postversion": "npm publish",
|
|
"prepublishOnly": "git push origin --follow-tags",
|
|
"prepare": "tshy",
|
|
"pretest": "npm run prepare",
|
|
"presnap": "npm run prepare",
|
|
"test": "tap",
|
|
"snap": "tap",
|
|
"format": "prettier --write . --loglevel warn",
|
|
"typedoc": "typedoc --tsconfig .tshy/esm.json ./src/*.ts"
|
|
},
|
|
"prettier": {
|
|
"semi": false,
|
|
"printWidth": 75,
|
|
"tabWidth": 2,
|
|
"useTabs": false,
|
|
"singleQuote": true,
|
|
"jsxSingleQuote": false,
|
|
"bracketSameLine": true,
|
|
"arrowParens": "avoid",
|
|
"endOfLine": "lf"
|
|
},
|
|
"devDependencies": {
|
|
"@types/end-of-stream": "^1.4.2",
|
|
"@types/node": "^20.1.2",
|
|
"end-of-stream": "^1.4.0",
|
|
"node-abort-controller": "^3.1.1",
|
|
"prettier": "^2.6.2",
|
|
"tap": "^19.0.0",
|
|
"through2": "^2.0.3",
|
|
"tshy": "^1.14.0",
|
|
"typedoc": "^0.25.1"
|
|
},
|
|
"repository": "https://github.com/isaacs/minipass",
|
|
"keywords": [
|
|
"passthrough",
|
|
"stream"
|
|
],
|
|
"author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
|
|
"license": "ISC",
|
|
"engines": {
|
|
"node": ">=16 || 14 >=14.17"
|
|
},
|
|
"tap": {
|
|
"typecheck": true,
|
|
"include": [
|
|
"test/*.ts"
|
|
]
|
|
}
|
|
}
|