{ "name": "@overleaf/real-time", "description": "The socket.io layer of Overleaf for real-time editor interactions", "private": true, "main": "app.js", "scripts": { "start": "node app.js", "test:acceptance:_run": "mocha --recursive --reporter spec --timeout 15000 --exit $@ test/acceptance/js", "test:acceptance": "npm run test:acceptance:_run -- --grep=$MOCHA_GREP", "test:unit:_run": "mocha --recursive --reporter spec $@ test/unit/js", "test:unit": "npm run test:unit:_run -- --grep=$MOCHA_GREP", "nodemon": "node --watch app.js", "lint": "eslint --max-warnings 0 --format unix .", "format": "prettier --list-different $PWD/'**/*.js'", "format:fix": "prettier --write $PWD/'**/*.js'", "lint:fix": "eslint --fix ." }, "dependencies": { "@hapi/joi": "^17.1.1", "@overleaf/logger": "*", "@overleaf/metrics": "*", "@overleaf/o-error": "*", "@overleaf/redis-wrapper": "*", "@overleaf/settings": "*", "async": "^3.2.2", "base64id": "0.1.0", "body-parser": "^1.19.0", "bunyan": "^1.8.15", "connect-redis": "^6.1.3", "cookie-parser": "^1.4.5", "express": "^4.18.2", "express-session": "^1.17.1", "proxy-addr": "^2.0.7", "request": "^2.88.2", "socket.io": "github:overleaf/socket.io#0.9.19-overleaf-10", "socket.io-client": "github:overleaf/socket.io-client#0.9.17-overleaf-5", "underscore": "1.13.1" }, "devDependencies": { "chai": "^4.3.6", "chai-as-promised": "^7.1.1", "cookie-signature": "^1.1.0", "mocha": "^10.2.0", "sandboxed-module": "~0.3.0", "sinon": "^9.2.4", "timekeeper": "0.0.4", "uid-safe": "^2.1.5" } }