262 lines
9.4 KiB
JSON
262 lines
9.4 KiB
JSON
{
|
|
"name": "peertube",
|
|
"description": "PeerTube, an ActivityPub-federated video streaming platform using P2P directly in your web browser.",
|
|
"version": "6.0.4",
|
|
"private": true,
|
|
"licence": "AGPL-3.0",
|
|
"engines": {
|
|
"node": ">=18.x",
|
|
"yarn": ">=1.x"
|
|
},
|
|
"type": "module",
|
|
"author": {
|
|
"name": "Chocobozzz",
|
|
"email": "chocobozzz@framasoft.org",
|
|
"url": "http://github.com/Chocobozzz"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/Chocobozzz/PeerTube.git"
|
|
},
|
|
"typings": "*.d.ts",
|
|
"workspaces": [
|
|
"packages/*",
|
|
"server"
|
|
],
|
|
"scripts": {
|
|
"e2e:browserstack": "bash ./scripts/e2e/browserstack.sh",
|
|
"e2e:local": "bash ./scripts/e2e/local.sh",
|
|
"build": "bash ./scripts/build/index.sh",
|
|
"build:embed": "bash ./scripts/build/embed.sh",
|
|
"build:server": "bash ./scripts/build/server.sh",
|
|
"build:client": "bash ./scripts/build/client.sh",
|
|
"build:peertube-runner": "bash ./scripts/build/peertube-runner.sh",
|
|
"build:peertube-cli": "bash ./scripts/build/peertube-cli.sh",
|
|
"build:tests": "bash ./scripts/build/tests.sh",
|
|
"clean:client": "bash ./scripts/clean/client/index.sh",
|
|
"clean:server:test": "bash ./scripts/clean/server/test.sh",
|
|
"i18n:update": "bash ./scripts/i18n/update.sh",
|
|
"dev": "bash ./scripts/dev/index.sh",
|
|
"dev:server": "bash ./scripts/dev/server.sh",
|
|
"dev:embed": "bash ./scripts/dev/embed.sh",
|
|
"dev:client": "bash ./scripts/dev/client.sh",
|
|
"dev:peertube-cli": "bash ./scripts/dev/peertube-cli.sh",
|
|
"dev:peertube-runner": "bash ./scripts/dev/peertube-runner.sh",
|
|
"start": "node dist/server",
|
|
"start:server": "node dist/server --no-client",
|
|
"plugin:install": "node ./dist/scripts/plugin/install.js",
|
|
"plugin:uninstall": "node ./dist/scripts/plugin/uninstall.js",
|
|
"reset-password": "node ./dist/scripts/reset-password.js",
|
|
"update-host": "node ./dist/scripts/update-host.js",
|
|
"regenerate-thumbnails": "node ./dist/scripts/regenerate-thumbnails.js",
|
|
"create-import-video-file-job": "node ./dist/scripts/create-import-video-file-job.js",
|
|
"create-move-video-storage-job": "node ./dist/scripts/create-move-video-storage-job.js",
|
|
"create-generate-storyboard-job": "node ./dist/scripts/create-generate-storyboard-job.js",
|
|
"parse-log": "node ./dist/scripts/parse-log.js",
|
|
"prune-storage": "node ./dist/scripts/prune-storage.js",
|
|
"test": "bash ./scripts/test.sh",
|
|
"generate-cli-doc": "bash ./scripts/generate-cli-doc.sh",
|
|
"generate-types-package": "tsx --conditions=peertube:tsx ./packages/types-generator/generate-package.ts",
|
|
"i18n:create-custom-files": "tsx --tsconfig ./scripts/tsconfig.json --conditions=peertube:tsx ./scripts/i18n/create-custom-files.ts",
|
|
"benchmark-server": "tsx --conditions=peertube:tsx ./scripts/benchmark.ts",
|
|
"client:build-stats": "tsx --conditions=peertube:tsx ./scripts/client-build-stats.ts",
|
|
"generate-code-contributors": "tsx --conditions=peertube:tsx ./scripts/generate-code-contributors.ts",
|
|
"simulate-many-viewers": "tsx --conditions=peertube:tsx ./scripts/simulate-many-viewers.ts",
|
|
"postinstall": "test -n \"$NOCLIENT\" || (cd client && yarn install --pure-lockfile)",
|
|
"tsc": "tsc",
|
|
"commander": "commander",
|
|
"lint": "npm run ci -- lint",
|
|
"ng": "ng",
|
|
"tsx": "tsx",
|
|
"eslint": "eslint",
|
|
"resolve-tspaths": "resolve-tspaths",
|
|
"resolve-tspaths:server": "npm run resolve-tspaths -- --project server/tsconfig.json --src server --out dist",
|
|
"resolve-tspaths:server-lib": "npm run resolve-tspaths -- --project server/tsconfig.lib.json --src server --out server/dist",
|
|
"resolve-tspaths:tests": "npm run resolve-tspaths -- --project packages/tests/tsconfig.json --src packages/tests/src --out packages/tests/dist",
|
|
"concurrently": "concurrently",
|
|
"mocha": "mocha",
|
|
"ci": "bash ./scripts/ci.sh",
|
|
"release": "bash ./scripts/release.sh",
|
|
"release-embed-api": "bash ./scripts/release-embed-api.sh",
|
|
"nightly": "bash ./scripts/nightly.sh",
|
|
"openapi-clients": "bash ./scripts/openapi-clients.sh",
|
|
"client-report": "bash ./scripts/client-report.sh",
|
|
"swagger-cli": "swagger-cli"
|
|
},
|
|
"dependencies": {
|
|
"@aws-sdk/client-s3": "^3.190.0",
|
|
"@aws-sdk/lib-storage": "^3.190.0",
|
|
"@aws-sdk/s3-request-presigner": "^3.345.0",
|
|
"@commander-js/extra-typings": "^12.0.0",
|
|
"@node-oauth/oauth2-server": "^5.1.0",
|
|
"@opentelemetry/api": "^1.1.0",
|
|
"@opentelemetry/exporter-jaeger": "^1.15.1",
|
|
"@opentelemetry/exporter-prometheus": "~0.48.0",
|
|
"@opentelemetry/instrumentation": "^0.48.0",
|
|
"@opentelemetry/instrumentation-dns": "^0.33.0",
|
|
"@opentelemetry/instrumentation-express": "^0.35.0",
|
|
"@opentelemetry/instrumentation-fs": "^0.9.0",
|
|
"@opentelemetry/instrumentation-http": "^0.48.0",
|
|
"@opentelemetry/instrumentation-ioredis": "^0.37.0",
|
|
"@opentelemetry/instrumentation-pg": "^0.38.0",
|
|
"@opentelemetry/resources": "^1.15.1",
|
|
"@opentelemetry/sdk-metrics": "^1.15.1",
|
|
"@opentelemetry/sdk-trace-base": "^1.15.1",
|
|
"@opentelemetry/sdk-trace-node": "^1.15.1",
|
|
"@opentelemetry/semantic-conventions": "^1.15.1",
|
|
"@peertube/feed": "^5.1.3",
|
|
"@peertube/http-signature": "^1.7.0",
|
|
"@smithy/node-http-handler": "^2.1.7",
|
|
"@uploadx/core": "^6.0.0",
|
|
"archiver": "^6.0.1",
|
|
"async-mutex": "^0.4.0",
|
|
"bcrypt": "5.1.1",
|
|
"bencode": "^4.0.0",
|
|
"bittorrent-tracker": "^11.0.1",
|
|
"bluebird": "^3.5.0",
|
|
"bullmq": "^5.3.0",
|
|
"bytes": "^3.0.0",
|
|
"chokidar": "^3.4.2",
|
|
"commander": "^12.0.0",
|
|
"config": "^3.0.0",
|
|
"cookie-parser": "^1.4.3",
|
|
"cors": "^2.8.1",
|
|
"create-torrent": "^6.0.15",
|
|
"deep-object-diff": "^1.1.0",
|
|
"email-templates": "^11.0.3",
|
|
"execa": "^8.0.1",
|
|
"express": "^4.18.1",
|
|
"express-rate-limit": "^7.1.1",
|
|
"express-validator": "^7.0.1",
|
|
"flat": "^6.0.1",
|
|
"fluent-ffmpeg": "^2.1.0",
|
|
"fs-extra": "^11.1.0",
|
|
"got": "^13.0.0",
|
|
"helmet": "^7.0.0",
|
|
"hpagent": "^1.0.0",
|
|
"http-problem-details": "^0.1.5",
|
|
"ioredis": "^5.2.3",
|
|
"ip-anonymize": "^0.1.0",
|
|
"ipaddr.js": "2.1.0",
|
|
"iso-639-3": "3.0.1",
|
|
"jimp": "^0.22.4",
|
|
"js-yaml": "^4.0.0",
|
|
"jsonld": "~8.3.1",
|
|
"jsonwebtoken": "^9.0.2",
|
|
"lodash-es": "^4.17.21",
|
|
"lru-cache": "^10.0.1",
|
|
"magnet-uri": "^7.0.5",
|
|
"markdown-it": "^14.0.0",
|
|
"markdown-it-emoji": "^3.0.0",
|
|
"maxmind": "^4.3.6",
|
|
"memoizee": "^0.4.14",
|
|
"morgan": "^1.5.3",
|
|
"multer": "^1.4.5-lts.1",
|
|
"node-media-server": "^2.1.4",
|
|
"nodemailer": "^6.0.0",
|
|
"opentelemetry-instrumentation-sequelize": "^0.40.0",
|
|
"otpauth": "^9.0.2",
|
|
"p-queue": "^8.0.1",
|
|
"parse-torrent": "^11.0.14",
|
|
"password-generator": "^2.0.2",
|
|
"pg": "^8.2.1",
|
|
"piscina": "^4.1.0",
|
|
"prompt": "^1.0.0",
|
|
"proxy-addr": "^2.0.7",
|
|
"pug": "^3.0.0",
|
|
"reflect-metadata": "^0.2.1",
|
|
"sanitize-html": "2.x",
|
|
"sequelize": "6.33.0",
|
|
"sequelize-typescript": "^2.0.0-beta.1",
|
|
"short-uuid": "^4.2.0",
|
|
"sitemap": "^7.0.0",
|
|
"socket.io": "^4.5.4",
|
|
"sql-formatter": "^15.2.0",
|
|
"srt-to-vtt": "^1.1.2",
|
|
"tslib": "^2.0.0",
|
|
"useragent": "^2.3.0",
|
|
"validator": "^13.0.0",
|
|
"webfinger.js": "^2.6.6",
|
|
"webtorrent": "^2.1.27",
|
|
"winston": "3.11.0",
|
|
"ws": "^8.0.0",
|
|
"yauzl": "^3.1.0"
|
|
},
|
|
"devDependencies": {
|
|
"@peertube/maildev": "^1.2.0",
|
|
"@peertube/resolve-tspaths": "^0.8.14",
|
|
"@types/archiver": "^6.0.2",
|
|
"@types/bcrypt": "^5.0.0",
|
|
"@types/bencode": "^2.0.0",
|
|
"@types/bluebird": "^3.5.33",
|
|
"@types/body-parser": "^1.16.3",
|
|
"@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": "^3.3.0",
|
|
"@types/create-torrent": "^5.0.0",
|
|
"@types/express": "4.17.9",
|
|
"@types/fluent-ffmpeg": "^2.1.16",
|
|
"@types/fs-extra": "^11.0.1",
|
|
"@types/jsonld": "^1.5.9",
|
|
"@types/jsonwebtoken": "^9.0.5",
|
|
"@types/lodash-es": "^4.17.8",
|
|
"@types/magnet-uri": "^5.1.1",
|
|
"@types/maildev": "^0.0.7",
|
|
"@types/memoizee": "^0.4.2",
|
|
"@types/mocha": "^10.0.0",
|
|
"@types/morgan": "^1.7.32",
|
|
"@types/multer": "^1.3.3",
|
|
"@types/node": "^18.13.0",
|
|
"@types/nodemailer": "^6.2.0",
|
|
"@types/supertest": "^6.0.2",
|
|
"@types/validator": "^13.9.0",
|
|
"@types/webtorrent": "^0.109.0",
|
|
"@types/ws": "^8.2.0",
|
|
"@types/yauzl": "^2.10.3",
|
|
"@typescript-eslint/eslint-plugin": "^7.0.2",
|
|
"autocannon": "^7.0.4",
|
|
"chai": "^5.1.0",
|
|
"chai-json-schema": "^1.5.0",
|
|
"chai-xml": "^0.4.0",
|
|
"concurrently": "^8.0.1",
|
|
"depcheck": "^1.4.2",
|
|
"esbuild": "^0.20.1",
|
|
"eslint": "8.56.0",
|
|
"eslint-config-standard-with-typescript": "43.0.1",
|
|
"eslint-plugin-import": "^2.20.1",
|
|
"eslint-plugin-n": "^16.0.0",
|
|
"eslint-plugin-promise": "^6.0.0",
|
|
"fast-xml-parser": "^4.0.0-beta.8",
|
|
"jpeg-js": "^0.4.4",
|
|
"jszip": "^3.10.1",
|
|
"mocha": "^10.0.0",
|
|
"pixelmatch": "^5.3.0",
|
|
"pngjs": "^7.0.0",
|
|
"proxy": "^2.1.1",
|
|
"socket.io-client": "^4.5.4",
|
|
"supertest": "^6.0.1",
|
|
"swagger-cli": "^4.0.2",
|
|
"tsc-watch": "^6.0.0",
|
|
"tsx": "^4.7.1",
|
|
"typescript": "~5.2"
|
|
},
|
|
"bundlewatch": {
|
|
"files": [
|
|
{
|
|
"path": "client/dist/en-US/*.js",
|
|
"maxSize": "1mb"
|
|
},
|
|
{
|
|
"path": "client/dist/standalone/videos/video-embed.bundle.js",
|
|
"maxSize": "1mb"
|
|
},
|
|
{
|
|
"path": "client/dist/standalone/videos/video-embed.css",
|
|
"maxSize": "1mb"
|
|
}
|
|
]
|
|
}
|
|
}
|