{ "name": "@overleaf/real-time", "description": "The socket.io layer of Overleaf for real-time editor interactions", "private": true, "main": "app.js", "scripts": { "start": "node $NODE_APP_OPTIONS 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": "nodemon --config nodemon.json", "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": "^3.1.0", "@overleaf/metrics": "^4.0.0", "@overleaf/o-error": "^3.4.0", "@overleaf/redis-wrapper": "^2.0.0", "@overleaf/settings": "^3.0.0", "async": "^0.9.0", "base64id": "0.1.0", "body-parser": "^1.19.0", "bunyan": "^1.8.15", "connect-redis": "^2.1.0", "cookie-parser": "^1.4.5", "express": "^4.17.1", "express-session": "^1.17.1", "proxy-addr": "^2.0.7", "request": "^2.88.2", "socket.io": "https://github.com/overleaf/socket.io/archive/0.9.19-overleaf-5.tar.gz", "socket.io-client": "https://github.com/overleaf/socket.io-client/archive/0.9.17-overleaf-3.tar.gz", "underscore": "1.13.1" }, "devDependencies": { "chai": "^4.3.6", "chai-as-promised": "^7.1.1", "cookie-signature": "^1.1.0", "mocha": "^8.4.0", "sandboxed-module": "~0.3.0", "sinon": "^9.2.4", "timekeeper": "0.0.4", "uid-safe": "^2.1.5" } }