{ "name": "mirotalksfu", "version": "1.4.90", "description": "WebRTC SFU browser-based video calls", "main": "Server.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "node app/src/Server.js", "start-dev": "nodemon app/src/Server.js", "debug": "DEBUG='mediasoup*' node app/src/Server.js", "compile": "npx browserify public/sfu/MediasoupClientCompile.js -o public/sfu/MediasoupClient.js", "lint": "npx prettier --write .", "docker-build": "docker build --tag mirotalk/sfu:latest .", "docker-rmi": "docker images |grep '' |awk '{print $3}' |xargs docker rmi", "docker-push": "docker push mirotalk/sfu:latest", "docker-pull": "docker pull mirotalk/sfu:latest", "docker-rmc": "docker container rm mirotalksfu --force", "docker-run": "docker run -d -p 40000-40100:40000-40100 -p 3010:3010 -v ./app/src/config.js:/src/app/src/config.js:ro --name mirotalksfu mirotalk/sfu:latest", "docker-run-vm": "docker run -d -p 40000-40100:40000-40100 -p 3010:3010 -v ./app/:/src/app/:ro -v ./public/:/src/public/:ro --name mirotalksfu mirotalk/sfu:latest", "docker-start": "docker start mirotalksfu", "docker-stop": "docker stop mirotalksfu", "rtmp-start": "docker-compose -f rtmpServers/nginx-rtmp/docker-compose.yml up -d", "rtmp-stop": "docker-compose -f rtmpServers/nginx-rtmp/docker-compose.yml down", "rtmp-restart": "docker-compose -f rtmpServers/nginx-rtmp/docker-compose.yml down && docker-compose -f rtmpServers/nginx-rtmp/docker-compose.yml up -d", "rtmp-logs": "docker logs -f mirotalk-rtmp", "nms-node-start": "node rtmpServers/node-media-server/src/server.js", "nms-start": "docker-compose -f rtmpServers/node-media-server/docker-compose.yml up -d", "nms-stop": "docker-compose -f rtmpServers/node-media-server/docker-compose.yml down", "nms-restart": "docker-compose -f rtmpServers/node-media-server/docker-compose.yml down && docker-compose -f rtmpServers/node-media-server/docker-compose.yml up -d", "nms-logs": "docker logs -f mirotalk-nms" }, "repository": { "type": "git", "url": "git+https://github.com/miroslavpejic85/mirotalksfu" }, "keywords": [ "webrtc", "socket.io", "broadcasting", "sfu", "nodejs", "video", "audio", "openai", "chatgpt", "rtmp", "client", "server", "streaming", "realtime" ], "author": "Miroslav Pejic", "license": "AGPL-3.0", "engines": { "node": ">=18" }, "dependencies": { "@sentry/integrations": "7.114.0", "@sentry/node": "8.15.0", "axios": "^1.7.2", "body-parser": "1.20.2", "colors": "1.4.0", "compression": "1.7.4", "cors": "2.8.5", "crypto-js": "4.2.0", "express": "4.19.2", "express-openid-connect": "^2.17.1", "fluent-ffmpeg": "^2.1.3", "httpolyglot": "0.1.2", "js-yaml": "^4.1.0", "jsonwebtoken": "^9.0.2", "mediasoup": "3.14.8", "mediasoup-client": "3.7.12", "ngrok": "^5.0.0-beta.2", "nodemailer": "^6.9.14", "openai": "^4.52.4", "qs": "6.12.3", "socket.io": "4.7.5", "swagger-ui-express": "5.0.1", "uuid": "10.0.0", "xss": "^1.0.15" }, "devDependencies": { "node-fetch": "^3.3.2", "nodemon": "^3.1.4", "prettier": "3.3.2" } }