
- 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.
62 lines
1.5 KiB
JSON
62 lines
1.5 KiB
JSON
{
|
|
"name": "flat-cache",
|
|
"version": "3.2.0",
|
|
"description": "A stupidly simple key/value storage using files to persist some data",
|
|
"repository": "jaredwray/flat-cache",
|
|
"license": "MIT",
|
|
"author": {
|
|
"name": "Jared Wray",
|
|
"url": "https://jaredwray.com"
|
|
},
|
|
"main": "src/cache.js",
|
|
"files": [
|
|
"src/cache.js",
|
|
"src/del.js",
|
|
"src/utils.js"
|
|
],
|
|
"engines": {
|
|
"node": "^10.12.0 || >=12.0.0"
|
|
},
|
|
"precommit": [
|
|
"npm run verify --silent"
|
|
],
|
|
"prepush": [
|
|
"npm run verify --silent"
|
|
],
|
|
"scripts": {
|
|
"eslint": "eslint --cache --cache-location=node_modules/.cache/ ./src/**/*.js ./test/**/*.js",
|
|
"eslint-fix": "npm run eslint -- --fix",
|
|
"autofix": "npm run eslint-fix",
|
|
"check": "npm run eslint",
|
|
"verify": "npm run eslint && npm run test:cache",
|
|
"test:cache": "c8 mocha -R spec test/specs",
|
|
"test:ci:cache": "c8 --reporter=lcov mocha -R spec test/specs",
|
|
"test": "npm run verify --silent"
|
|
},
|
|
"keywords": [
|
|
"json cache",
|
|
"simple cache",
|
|
"file cache",
|
|
"key par",
|
|
"key value",
|
|
"cache"
|
|
],
|
|
"devDependencies": {
|
|
"c8": "^7.14.0",
|
|
"chai": "^4.3.10",
|
|
"eslint": "^7.13.0",
|
|
"eslint-config-prettier": "^6.15.0",
|
|
"eslint-plugin-mocha": "^8.0.0",
|
|
"eslint-plugin-prettier": "^3.1.4",
|
|
"glob-expand": "^0.2.1",
|
|
"mocha": "^8.4.0",
|
|
"prettier": "^2.1.2",
|
|
"write": "^2.0.0"
|
|
},
|
|
"dependencies": {
|
|
"flatted": "^3.2.9",
|
|
"keyv": "^4.5.3",
|
|
"rimraf": "^3.0.2"
|
|
}
|
|
}
|