{
  "author": {
    "name": "PrestonN",
    "email": "FreeTubeApp@protonmail.com",
    "url": "https://github.com/FreeTubeApp/FreeTube"
  },
  "bugs": {
    "url": "https://github.com/FreeTubeApp/FreeTube/issues"
  },
  "dependencies": {
    "@fortawesome/fontawesome-svg-core": "^1.2.34",
    "@fortawesome/free-brands-svg-icons": "^5.15.2",
    "@fortawesome/free-solid-svg-icons": "^5.15.2",
    "@fortawesome/vue-fontawesome": "^2.0.2",
    "@silvermine/videojs-quality-selector": "^1.2.4",
    "autolinker": "^3.14.2",
    "bulma-pro": "^0.2.0",
    "dateformat": "^4.4.1",
    "electron-context-menu": "^2.4.0",
    "http-proxy-agent": "^4.0.1",
    "https-proxy-agent": "^5.0.0",
    "jquery": "^3.5.1",
    "js-yaml": "^4.0.0",
    "lodash.debounce": "^4.0.8",
    "lodash.isequal": "^4.5.0",
    "lodash.uniqwith": "^4.5.0",
    "markdown": "^0.5.0",
    "material-design-icons": "^3.0.1",
    "nedb": "^1.8.0",
    "opml-to-json": "1.0.1",
    "rss-parser": "^3.10.0",
    "socks-proxy-agent": "^5.0.0",
    "video.js": "7.10.2",
    "videojs-abloop": "^1.2.0",
    "videojs-contrib-quality-levels": "^2.0.9",
    "videojs-http-source-selector": "^1.1.6",
    "videojs-overlay": "^2.1.4",
    "videojs-replay": "^1.1.0",
    "videojs-vtt-thumbnails-freetube": "0.0.15",
    "vue": "^2.6.12",
    "vue-electron": "^1.0.6",
    "vue-i18n": "^8.22.4",
    "vue-observe-visibility": "^1.0.0",
    "vue-router": "^3.4.9",
    "vuex": "^3.6.0",
    "xml2json": "^0.12.0",
    "youtube-chat": "^1.1.0",
    "youtube-suggest": "^1.1.0",
    "yt-channel-info": "^1.2.0",
    "yt-comment-scraper": "^2.0.0",
    "yt-dash-manifest-generator": "1.1.0",
    "yt-trending-scraper": "1.1.0",
    "yt-xml2vtt": "^1.2.0",
    "ytdl-core": "^4.4.4",
    "ytpl": "^2.0.4",
    "ytsr": "^3.2.2"
  },
  "description": "A private YouTube client",
  "devDependencies": {
    "@babel/core": "^7.12.10",
    "@babel/plugin-proposal-class-properties": "^7.12.1",
    "@babel/plugin-proposal-object-rest-spread": "^7.12.1",
    "@babel/preset-env": "^7.12.11",
    "@babel/preset-typescript": "^7.12.7",
    "@typescript-eslint/eslint-plugin": "^4.14.0",
    "@typescript-eslint/parser": "^4.14.0",
    "acorn": "^8.0.4",
    "babel-eslint": "^10.1.0",
    "babel-loader": "^8.2.2",
    "copy-webpack-plugin": "6.4.0",
    "css-loader": "^5.0.1",
    "devtron": "^1.4.0",
    "electron": "11.1.1",
    "electron-builder": "^22.9.1",
    "electron-builder-squirrel-windows": "^22.10.4",
    "electron-debug": "^3.2.0",
    "electron-rebuild": "^2.3.4",
    "eslint": "^7.18.0",
    "eslint-config-prettier": "^7.2.0",
    "eslint-config-standard": "^16.0.2",
    "eslint-plugin-import": "^2.22.1",
    "eslint-plugin-node": "^11.1.0",
    "eslint-plugin-prettier": "^3.3.1",
    "eslint-plugin-promise": "^4.2.1",
    "eslint-plugin-standard": "^5.0.0",
    "eslint-plugin-vue": "^7.4.1",
    "fast-glob": "^3.2.5",
    "file-loader": "^6.2.0",
    "html-webpack-plugin": "^4.5.1",
    "jest": "^26.6.3",
    "mini-css-extract-plugin": "^1.3.4",
    "node-abi": "^2.19.3",
    "node-loader": "^1.0.2",
    "npm-run-all": "^4.1.5",
    "prettier": "^2.2.1",
    "sass": "^1.32.5",
    "sass-loader": "^10.1.1",
    "style-loader": "^2.0.0",
    "tree-kill": "1.2.2",
    "typescript": "^4.1.3",
    "url-loader": "^4.1.1",
    "vue-devtools": "^5.1.4",
    "vue-eslint-parser": "^7.4.1",
    "vue-loader": "^15.9.6",
    "vue-style-loader": "^4.1.2",
    "vue-template-compiler": "^2.6.12",
    "webpack": "4.44.2",
    "webpack-cli": "3.3.12",
    "webpack-dev-server": "^3.11.2"
  },
  "license": "AGPL-3.0-or-later",
  "main": "./dist/main.js",
  "name": "freetube",
  "private": true,
  "productName": "FreeTube",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/FreeTubeApp/FreeTube.git"
  },
  "scripts": {
    "build": "run-s rebuild:electron pack build-release",
    "build:arm": "run-s rebuild:electron pack build-release:arm",
    "build-release": "node _scripts/build.js",
    "build-release:arm": "node _scripts/build.js arm",
    "debug": "run-s rebuild:electron debug-runner",
    "debug-runner": "node _scripts/dev-runner.js --remote-debug",
    "dev": "run-s rebuild:electron dev-runner",
    "dev-runner": "node _scripts/dev-runner.js",
    "electron-builder-install": "electron-builder install-app-deps",
    "electron-rebuild": "electron-rebuild",
    "jest": "jest",
    "jest:coverage": "jest --collect-coverage",
    "jest:watch": "jest --watch",
    "lint-fix": "eslint --fix --ext .js,.ts,.vue ./",
    "lint": "eslint --ext .js,.ts,.vue ./",
    "pack": "run-p pack:main pack:renderer pack:web pack:workers",
    "pack:main": "webpack --mode=production --env.NODE_ENV=production --hide-modules --config _scripts/webpack.main.config.js",
    "pack:renderer": "webpack --mode=production --env.NODE_ENV=production --hide-modules --config _scripts/webpack.renderer.config.js",
    "pack:web": "webpack --mode=production --env.NODE_ENV=production --hide-modules --config _scripts/webpack.web.config.js",
    "pack:workers": "webpack --mode=production --env.NODE_ENV=production --hide-modules --config _scripts/webpack.workers.config.js",
    "postinstall": "electron-rebuild",
    "prettier": "prettier --write \"{src,_scripts}/**/*.{js,ts,vue}\"",
    "rebuild:electron": "run-s electron-builder-install electron-rebuild",
    "rebuild:node": "npm rebuild",
    "release": "run-s test build",
    "test": "run-s rebuild:node pack:workers jest",
    "test:watch": "run-s rebuild:node pack:workers jest:watch"
  },
  "version": "0.11.1"
}