
- 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.
84 lines
1.9 KiB
JSON
84 lines
1.9 KiB
JSON
{
|
|
"name": "picomatch",
|
|
"description": "Blazing fast and accurate glob matcher written in JavaScript, with no dependencies and full support for standard and extended Bash glob features, including braces, extglobs, POSIX brackets, and regular expressions.",
|
|
"version": "4.0.1",
|
|
"homepage": "https://github.com/micromatch/picomatch",
|
|
"author": "Jon Schlinkert (https://github.com/jonschlinkert)",
|
|
"funding": "https://github.com/sponsors/jonschlinkert",
|
|
"repository": "micromatch/picomatch",
|
|
"bugs": {
|
|
"url": "https://github.com/micromatch/picomatch/issues"
|
|
},
|
|
"license": "MIT",
|
|
"files": [
|
|
"index.js",
|
|
"posix.js",
|
|
"lib"
|
|
],
|
|
"sideEffects": false,
|
|
"main": "index.js",
|
|
"engines": {
|
|
"node": ">=12"
|
|
},
|
|
"scripts": {
|
|
"lint": "eslint --cache --cache-location node_modules/.cache/.eslintcache --report-unused-disable-directives --ignore-path .gitignore .",
|
|
"mocha": "mocha --reporter dot",
|
|
"test": "npm run lint && npm run mocha",
|
|
"test:ci": "npm run test:cover",
|
|
"test:cover": "nyc npm run mocha"
|
|
},
|
|
"devDependencies": {
|
|
"eslint": "^8.56.0",
|
|
"fill-range": "^7.0.1",
|
|
"gulp-format-md": "^2.0.0",
|
|
"mocha": "^10.2.0",
|
|
"nyc": "^15.1.0",
|
|
"time-require": "github:jonschlinkert/time-require"
|
|
},
|
|
"keywords": [
|
|
"glob",
|
|
"match",
|
|
"picomatch"
|
|
],
|
|
"nyc": {
|
|
"reporter": [
|
|
"html",
|
|
"lcov",
|
|
"text-summary"
|
|
]
|
|
},
|
|
"verb": {
|
|
"toc": {
|
|
"render": true,
|
|
"method": "preWrite",
|
|
"maxdepth": 3
|
|
},
|
|
"layout": "empty",
|
|
"tasks": [
|
|
"readme"
|
|
],
|
|
"plugins": [
|
|
"gulp-format-md"
|
|
],
|
|
"lint": {
|
|
"reflinks": true
|
|
},
|
|
"related": {
|
|
"list": [
|
|
"braces",
|
|
"micromatch"
|
|
]
|
|
},
|
|
"reflinks": [
|
|
"braces",
|
|
"expand-brackets",
|
|
"extglob",
|
|
"fill-range",
|
|
"micromatch",
|
|
"minimatch",
|
|
"nanomatch",
|
|
"picomatch"
|
|
]
|
|
}
|
|
}
|