package.json 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247
  1. {
  2. "name": "peertube",
  3. "description": "PeerTube, an ActivityPub-federated video streaming platform using P2P directly in your web browser.",
  4. "version": "3.0.1",
  5. "private": true,
  6. "licence": "AGPL-3.0",
  7. "engines": {
  8. "node": ">=10.x <13",
  9. "yarn": ">=1.x",
  10. "postgres": ">=9.6",
  11. "redis-server": ">=2.8.18",
  12. "ffmpeg": ">=4.1"
  13. },
  14. "bin": {
  15. "peertube": "dist/server/tools/peertube.js"
  16. },
  17. "author": {
  18. "name": "Chocobozzz",
  19. "email": "chocobozzz@framasoft.org",
  20. "url": "http://github.com/Chocobozzz"
  21. },
  22. "repository": {
  23. "type": "git",
  24. "url": "git+https://github.com/Chocobozzz/PeerTube.git"
  25. },
  26. "typings": "*.d.ts",
  27. "scripts": {
  28. "e2e": "scripty",
  29. "e2e:local": "scripty",
  30. "setup:cli": "scripty",
  31. "build": "scripty",
  32. "build:embed": "scripty",
  33. "build:server": "scripty",
  34. "build:client": "scripty",
  35. "clean:client": "scripty",
  36. "clean:server": "scripty",
  37. "clean:server:test": "scripty",
  38. "danger:clean:dev": "scripty",
  39. "danger:clean:prod": "scripty",
  40. "danger:clean:modules": "scripty",
  41. "i18n:update": "scripty",
  42. "plugin:install": "node ./dist/scripts/plugin/install.js",
  43. "plugin:uninstall": "node ./dist/scripts/plugin/uninstall.js",
  44. "i18n:create-custom-files": "node ./dist/scripts/i18n/create-custom-files.js",
  45. "reset-password": "node ./dist/scripts/reset-password.js",
  46. "play": "scripty",
  47. "dev": "sh ./scripts/dev/index.sh",
  48. "dev:server": "sh ./scripts/dev/server.sh",
  49. "dev:embed": "scripty",
  50. "dev:client": "sh ./scripts/dev/client.sh",
  51. "dev:cli": "scripty",
  52. "start": "node dist/server",
  53. "start:server": "node dist/server --no-client",
  54. "update-host": "node ./dist/scripts/update-host.js",
  55. "create-transcoding-job": "node ./dist/scripts/create-transcoding-job.js",
  56. "create-import-video-file-job": "node ./dist/scripts/create-import-video-file-job.js",
  57. "print-transcode-command": "node ./dist/scripts/print-transcode-command.js",
  58. "test": "scripty",
  59. "help": "scripty",
  60. "generate-cli-doc": "scripty",
  61. "parse-log": "node ./dist/scripts/parse-log.js",
  62. "prune-storage": "node ./dist/scripts/prune-storage.js",
  63. "optimize-old-videos": "node ./dist/scripts/optimize-old-videos.js",
  64. "postinstall": "test -n \"$NOCLIENT\" || (cd client && yarn install --pure-lockfile)",
  65. "tsc": "tsc",
  66. "commander": "commander",
  67. "lint": "npm run ci -- lint",
  68. "ng": "ng",
  69. "nodemon": "nodemon",
  70. "ts-node": "ts-node",
  71. "eslint": "eslint",
  72. "concurrently": "concurrently",
  73. "sasslint": "sass-lint --verbose --no-exit",
  74. "sasslint:fix": "sass-lint-auto-fix -c .sass-lint.yml --verbose",
  75. "mocha": "mocha",
  76. "ci": "scripty",
  77. "release": "scripty",
  78. "release-embed-api": "scripty",
  79. "nightly": "scripty",
  80. "openapi-clients": "scripty",
  81. "client-report": "scripty",
  82. "swagger-cli": "swagger-cli",
  83. "sass-lint": "sass-lint"
  84. },
  85. "resolutions": {
  86. "oauth2-server": "3.1.0-beta.1",
  87. "http-signature": "1.3.5"
  88. },
  89. "dependencies": {
  90. "apicache": "^1.4.0",
  91. "async": "^3.0.1",
  92. "async-lru": "^1.1.1",
  93. "bcrypt": "5.0.0",
  94. "bittorrent-tracker": "^9.0.0",
  95. "bluebird": "^3.5.0",
  96. "body-parser": "^1.12.4",
  97. "bull": "^3.4.2",
  98. "bytes": "^3.0.0",
  99. "chokidar": "^3.4.2",
  100. "commander": "^6.0.0",
  101. "config": "^3.0.0",
  102. "cookie-parser": "^1.4.3",
  103. "cors": "^2.8.1",
  104. "create-torrent": "^4.0.0",
  105. "deep-object-diff": "^1.1.0",
  106. "email-templates": "^7.0.4",
  107. "express": "^4.12.4",
  108. "express-oauth-server": "^2.0.0",
  109. "express-rate-limit": "^5.0.0",
  110. "express-validator": "^6.4.0",
  111. "flat": "^5.0.0",
  112. "fluent-ffmpeg": "^2.1.0",
  113. "fs-extra": "^9.0.0",
  114. "helmet": "^4.1.0",
  115. "http-signature": "1.3.5",
  116. "ip-anonymize": "^0.1.0",
  117. "ipaddr.js": "2.0.0",
  118. "is-cidr": "^4.0.0",
  119. "iso-639-3": "^2.0.0",
  120. "jimp": "^0.16.0",
  121. "js-yaml": "^3.5.4",
  122. "jsonld": "~3.2.0",
  123. "lodash": "^4.17.10",
  124. "lru-cache": "^6.0.0",
  125. "magnet-uri": "^6.1.0",
  126. "markdown-it": "12.0.2",
  127. "markdown-it-emoji": "^2.0.0",
  128. "memoizee": "^0.4.14",
  129. "morgan": "^1.5.3",
  130. "multer": "^1.1.0",
  131. "node-media-server": "^2.1.4",
  132. "nodemailer": "^6.0.0",
  133. "oauth2-server": "3.1.0-beta.1",
  134. "parse-torrent": "^9.1.0",
  135. "password-generator": "^2.0.2",
  136. "pem": "^1.12.3",
  137. "pfeed": "1.1.11",
  138. "pg": "^8.2.1",
  139. "prompt": "^1.0.0",
  140. "pug": "^3.0.0",
  141. "redis": "^3.0.2",
  142. "reflect-metadata": "^0.1.12",
  143. "request": "^2.81.0",
  144. "sanitize-html": "2.x",
  145. "scripty": "^2.0.0",
  146. "sequelize": "6.3.5",
  147. "sequelize-typescript": "^2.0.0-beta.1",
  148. "sitemap": "^6.1.0",
  149. "socket.io": "^3.0.2",
  150. "srt-to-vtt": "^1.1.2",
  151. "tsconfig-paths": "^3.9.0",
  152. "tslib": "^2.0.0",
  153. "useragent": "^2.3.0",
  154. "uuid": "^8.1.0",
  155. "validator": "^13.0.0",
  156. "webfinger.js": "^2.6.6",
  157. "webtorrent": "^0.111.0",
  158. "winston": "3.3.3",
  159. "ws": "^7.0.0",
  160. "youtube-dl": "^3.0.2"
  161. },
  162. "devDependencies": {
  163. "@openapitools/openapi-generator-cli": "^2.1.4",
  164. "@types/apicache": "^1.2.0",
  165. "@types/async": "^3.0.0",
  166. "@types/async-lock": "^1.1.0",
  167. "@types/bcrypt": "^3.0.0",
  168. "@types/bluebird": "3.5.33",
  169. "@types/body-parser": "^1.16.3",
  170. "@types/bull": "3.14.4",
  171. "@types/bytes": "^3.0.0",
  172. "@types/chai": "^4.0.4",
  173. "@types/chai-json-schema": "^1.4.3",
  174. "@types/chai-xml": "^0.3.1",
  175. "@types/config": "^0.0.36",
  176. "@types/express": "^4.0.35",
  177. "@types/express-rate-limit": "^5.0.0",
  178. "@types/fluent-ffmpeg": "^2.1.16",
  179. "@types/fs-extra": "^9.0.1",
  180. "@types/libxmljs": "^0.18.0",
  181. "@types/lodash": "^4.14.64",
  182. "@types/lru-cache": "^5.1.0",
  183. "@types/magnet-uri": "^5.1.1",
  184. "@types/maildev": "^0.0.1",
  185. "@types/memoizee": "^0.4.2",
  186. "@types/mkdirp": "^1.0.0",
  187. "@types/mocha": "^8.0.3",
  188. "@types/morgan": "^1.7.32",
  189. "@types/multer": "^1.3.3",
  190. "@types/node": "^14.0.13",
  191. "@types/nodemailer": "^6.2.0",
  192. "@types/oauth2-server": "^3.0.8",
  193. "@types/pem": "^1.9.3",
  194. "@types/redis": "^2.8.5",
  195. "@types/request": "^2.0.3",
  196. "@types/supertest": "^2.0.3",
  197. "@types/validator": "^13.0.0",
  198. "@types/webtorrent": "^0.109.0",
  199. "@types/ws": "^7.2.1",
  200. "@typescript-eslint/eslint-plugin": "^4.8.1",
  201. "chai": "^4.1.1",
  202. "chai-json-schema": "^1.5.0",
  203. "chai-xml": "^0.4.0",
  204. "concurrently": "^5.0.0",
  205. "eslint": "^7.2.0",
  206. "eslint-config-standard-with-typescript": "^19.0.1",
  207. "eslint-plugin-import": "^2.20.1",
  208. "eslint-plugin-node": "^11.0.0",
  209. "eslint-plugin-promise": "^4.2.1",
  210. "eslint-plugin-standard": "^4.0.1",
  211. "libxmljs": "0.19.7",
  212. "maildev": "^1.0.0-rc3",
  213. "marked": "^1.1.0",
  214. "marked-man": "^0.7.0",
  215. "mocha": "^8.0.1",
  216. "nodemon": "^2.0.1",
  217. "socket.io-client": "^3.0.2",
  218. "source-map-support": "^0.5.0",
  219. "supertest": "^6.0.1",
  220. "swagger-cli": "^4.0.2",
  221. "ts-node": "9.0.0",
  222. "typescript": "^4.0.5"
  223. },
  224. "scripty": {
  225. "silent": true
  226. },
  227. "sasslintConfig": "client/.sass-lint.yml",
  228. "_moduleAliases": {
  229. "@server": "dist/server"
  230. },
  231. "bundlewatch": {
  232. "files": [
  233. {
  234. "path": "client/dist/en-US/*-es2015.js",
  235. "maxSize": "1mb"
  236. },
  237. {
  238. "path": "client/dist/standalone/videos/video-embed.bundle.js",
  239. "maxSize": "1mb"
  240. },
  241. {
  242. "path": "client/dist/standalone/videos/video-embed.css",
  243. "maxSize": "1mb"
  244. }
  245. ]
  246. }
  247. }