{
"name": "peertube",
"description": "Federated (ActivityPub) video streaming platform using P2P (BitTorrent) directly in the web browser with WebTorrent and Angular.",
"version": "2.0.0",
"private": true,
"licence": "AGPLv3",
"engines": {
"node": ">=8.x"
},
"bin": {
"peertube": "dist/server/tools/peertube.js"
},
"author": {
"name": "Chocobozzz",
"email": "chocobozzz@cpy.re",
"url": "http://github.com/Chocobozzz"
},
"repository": {
"type": "git",
"url": "git+https://github.com/Chocobozzz/PeerTube.git"
},
"typings": "*.d.ts",
"scripts": {
"e2e": "scripty",
"e2e:local": "scripty",
"setup:cli": "scripty",
"build": "SCRIPTY_PARALLEL=true scripty",
"build:server": "scripty",
"build:client": "scripty",
"clean:client": "scripty",
"clean:server": "scripty",
"clean:server:test": "scripty",
"watch:client": "scripty",
"watch:server": "scripty",
"danger:clean:dev": "scripty",
"danger:clean:prod": "scripty",
"danger:clean:modules": "scripty",
"i18n:generate": "scripty",
"plugin:install": "node ./dist/scripts/plugin/install.js",
"plugin:uninstall": "node ./dist/scripts/plugin/uninstall.js",
"i18n:xliff2json": "node ./dist/scripts/i18n/xliff2json.js",
"i18n:create-custom-files": "node ./dist/scripts/i18n/create-custom-files.js",
"reset-password": "node ./dist/scripts/reset-password.js",
"play": "scripty",
"dev": "scripty",
"dev:server": "scripty",
"dev:client": "scripty",
"dev:cli": "scripty",
"start": "node dist/server",
"start:server": "node dist/server --no-client",
"update-host": "node ./dist/scripts/update-host.js",
"create-transcoding-job": "node ./dist/scripts/create-transcoding-job.js",
"create-import-video-file-job": "node ./dist/scripts/create-import-video-file-job.js",
"test": "scripty",
"help": "scripty",
"generate-cli-doc": "scripty",
"parse-log": "node ./dist/scripts/parse-log.js",
"prune-storage": "node ./dist/scripts/prune-storage.js",
"optimize-old-videos": "node ./dist/scripts/optimize-old-videos.js",
"postinstall": "test -n \"$NOCLIENT\" || (cd client && yarn install --pure-lockfile)",
"tsc": "tsc",
"commander": "commander",
"lint": "npm run ci -- lint",
"ng": "ng",
"nodemon": "nodemon",
"ts-node": "ts-node",
"tslint": "tslint",
"concurrently": "concurrently",
"mocha-parallel-tests": "mocha-parallel-tests",
"sasslint": "sass-lint --verbose --no-exit",
"sasslint:fix": "sass-lint-auto-fix -c .sass-lint.yml --verbose",
"mocha": "mocha",
"ci": "scripty",
"release": "scripty",
"nightly": "scripty",
"client-report": "scripty"
},
"husky": {
"hooks": {
"pre-commit": "lint-staged"
}
},
"lint-staged": {
"*.scss": [
"sass-lint -c client/.sass-lint.yml",
"git add"
],
"support/doc/api/*.yaml": [
"node ./node_modules/swagger-cli/bin/swagger-cli.js validate support/doc/api/openapi.yaml",
"git add"
],
"server/tools/README.md": [
"npm run generate-cli-doc",
"git add"
]
},
"resolutions": {
"@types/bluebird": "3.5.27"
},
"dependencies": {
"apicache": "^1.4.0",
"async": "^3.0.1",
"async-lru": "^1.1.1",
"bcrypt": "3.0.7",
"bittorrent-tracker": "^9.0.0",
"bluebird": "^3.5.0",
"body-parser": "^1.12.4",
"bull": "^3.4.2",
"bytes": "^3.0.0",
"commander": "^4.0.1",
"config": "^3.0.0",
"cookie-parser": "^1.4.3",
"cors": "^2.8.1",
"create-torrent": "^4.0.0",
"deep-object-diff": "^1.1.0",
"express": "^4.12.4",
"express-oauth-server": "^2.0.0",
"express-rate-limit": "^4.0.4",
"express-validator": "^6.1.1",
"flat": "^5.0.0",
"fluent-ffmpeg": "^2.1.0",
"fs-extra": "^8.0.1",
"helmet": "^3.12.1",
"http-signature": "^1.2.0",
"ip-anonymize": "^0.1.0",
"ipaddr.js": "1.9.1",
"is-cidr": "^3.0.0",
"iso-639-3": "^1.0.1",
"js-yaml": "^3.5.4",
"jsonld": "~1.8.0",
"lodash": "^4.17.10",
"lru-cache": "^5.1.1",
"magnet-uri": "^5.1.4",
"memoizee": "^0.4.14",
"morgan": "^1.5.3",
"multer": "^1.1.0",
"nodemailer": "^6.0.0",
"parse-torrent": "^7.0.0",
"password-generator": "^2.0.2",
"pem": "^1.12.3",
"pfeed": "^1.1.6",
"pg": "^7.4.1",
"prompt": "^1.0.0",
"redis": "^2.8.0",
"reflect-metadata": "^0.1.12",
"request": "^2.81.0",
"scripty": "^1.5.0",
"sequelize": "5.21.2",
"sequelize-typescript": "^1.0.0-beta.4",
"sharp": "^0.23.3",
"sitemap": "^5.0.0",
"socket.io": "^2.2.0",
"srt-to-vtt": "^1.1.2",
"tsconfig-paths": "^3.9.0",
"useragent": "^2.3.0",
"uuid": "^3.1.0",
"validator": "^12.1.0",
"webfinger.js": "^2.6.6",
"webtorrent": "^0.107.16",
"winston": "3.2.1",
"ws": "^7.0.0",
"youtube-dl": "^2.0.0"
},
"devDependencies": {
"@types/apicache": "^1.2.0",
"@types/async": "^3.0.0",
"@types/async-lock": "^1.1.0",
"@types/bcrypt": "^3.0.0",
"@types/bluebird": "3.5.21",
"@types/body-parser": "^1.16.3",
"@types/bull": "3.4.0",
"@types/bytes": "^3.0.0",
"@types/chai": "^4.0.4",
"@types/chai-json-schema": "^1.4.3",
"@types/chai-xml": "^0.3.1",
"@types/config": "^0.0.34",
"@types/express": "^4.0.35",
"@types/express-rate-limit": "^3.3.0",
"@types/fluent-ffmpeg": "^2.1.8",
"@types/fs-extra": "^8.0.0",
"@types/libxmljs": "^0.18.0",
"@types/lodash": "^4.14.64",
"@types/lru-cache": "^5.1.0",
"@types/magnet-uri": "^5.1.1",
"@types/maildev": "^0.0.1",
"@types/memoizee": "^0.4.2",
"@types/mkdirp": "^0.5.1",
"@types/mocha": "^5.0.0",
"@types/morgan": "^1.7.32",
"@types/multer": "^1.3.3",
"@types/node": "^10.0.8",
"@types/nodemailer": "^6.2.0",
"@types/oauth2-server": "^3.0.8",
"@types/pem": "^1.9.3",
"@types/redis": "^2.8.5",
"@types/request": "^2.0.3",
"@types/sharp": "^0.23.0",
"@types/socket.io": "^2.1.2",
"@types/supertest": "^2.0.3",
"@types/validator": "^10.9.0",
"@types/webtorrent": "^0.107.0",
"@types/ws": "^6.0.0",
"chai": "^4.1.1",
"chai-json-schema": "^1.5.0",
"chai-xml": "^0.3.2",
"concurrently": "^5.0.0",
"husky": "^3.0.1",
"libxmljs": "0.19.7",
"lint-staged": "^9.2.0",
"maildev": "^1.0.0-rc3",
"marked-man": "^0.7.0",
"mocha": "^6.0.0",
"mocha-parallel-tests": "^2.2.1",
"nodemon": "^2.0.1",
"sass-lint": "^1.12.1",
"source-map-support": "^0.5.0",
"supertest": "^4.0.2",
"swagger-cli": "^2.2.0",
"ts-node": "8.5.4",
"tslint": "^5.7.0",
"tslint-config-standard": "^9.0.0",
"typescript": "^3.7.2",
"xliff": "^4.0.0"
},
"scripty": {
"silent": true
},
"sasslintConfig": "client/.sass-lint.yml",
"_moduleAliases": {
"@server": "dist/server"
}
}