{
  "name": "pinafore",
  "description": "Alternative web client for Mastodon",
  "version": "1.3.1",
  "scripts": {
    "lint": "standard && standard --plugin html 'src/routes/**/*.html'",
    "lint-fix": "standard --fix && standard --fix --plugin html 'src/routes/**/*.html'",
    "dev": "run-s build-template-html build-assets serve-dev",
    "serve-dev": "run-p --race build-template-html-watch sapper-dev",
    "sapper-dev": "cross-env NODE_ENV=development PORT=4002 sapper dev",
    "before-build": "run-s build-template-html build-assets",
    "build": "cross-env NODE_ENV=production run-s build-steps",
    "build-steps": "run-s before-build sapper-export build-now-json",
    "sapper-build": "sapper build",
    "start": "node server.js",
    "build-and-start": "run-s build start",
    "build-template-html": "node -r esm ./bin/build-template-html.js",
    "build-template-html-watch": "node -r esm ./bin/build-template-html.js --watch",
    "build-assets": "node -r esm ./bin/build-assets.js",
    "run-mastodon": "node -r esm ./bin/run-mastodon.js",
    "test": "cross-env BROWSER=chrome:headless run-s test-browser",
    "test-browser": "run-p --race run-mastodon build-and-start test-mastodon",
    "test-mastodon": "run-s wait-for-mastodon-to-start wait-for-mastodon-data testcafe",
    "test-browser-suite0": "run-p --race run-mastodon build-and-start test-mastodon-suite0",
    "test-mastodon-suite0": "run-s wait-for-mastodon-to-start wait-for-mastodon-data testcafe-suite0",
    "test-browser-suite1": "run-p --race run-mastodon build-and-start test-mastodon-suite1",
    "test-mastodon-suite1": "run-s wait-for-mastodon-to-start wait-for-mastodon-data testcafe-suite1",
    "testcafe": "run-s testcafe-suite0 testcafe-suite1",
    "testcafe-suite0": "cross-env-shell testcafe --hostname localhost --skip-js-errors -c 4 $BROWSER tests/spec/0*",
    "testcafe-suite1": "cross-env-shell testcafe --hostname localhost --skip-js-errors $BROWSER tests/spec/1*",
    "test-unit": "mocha -r esm tests/unit/",
    "wait-for-mastodon-to-start": "node -r esm bin/wait-for-mastodon-to-start.js",
    "wait-for-mastodon-data": "node -r esm bin/wait-for-mastodon-data.js",
    "deploy-prod": "DEPLOY_TYPE=prod ./bin/deploy.sh",
    "deploy-dev": "DEPLOY_TYPE=dev ./bin/deploy.sh",
    "deploy-all-travis": "./bin/deploy-all-travis.sh",
    "backup-mastodon-data": "./bin/backup-mastodon-data.sh",
    "sapper-export": "cross-env PORT=22939 sapper export",
    "print-export-info": "node ./bin/print-export-info.js",
    "export-steps": "run-s before-build sapper-export print-export-info",
    "export": "cross-env NODE_ENV=production run-s export-steps",
    "now-build": "run-s export",
    "build-now-json": "node -r esm ./bin/build-now-json.js"
  },
  "dependencies": {
    "@gamestdio/websocket": "^0.3.2",
    "@webcomponents/custom-elements": "^1.2.1",
    "cheerio": "^1.0.0-rc.2",
    "child-process-promise": "^2.2.1",
    "chokidar": "^2.1.2",
    "circular-dependency-plugin": "^5.0.2",
    "clean-css": "^4.2.1",
    "compression": "^1.7.3",
    "cross-env": "^5.2.0",
    "css-dedoupe": "^0.1.1",
    "css-loader": "^2.1.0",
    "emoji-mart": "github:nolanlawson/emoji-mart#for-pinafore-1",
    "emoji-regex": "^7.0.3",
    "encoding": "^0.1.12",
    "escape-html": "^1.0.3",
    "esm": "^3.2.7",
    "events-light": "^1.0.5",
    "express": "^4.16.4",
    "file-api": "^0.10.4",
    "file-drop-element": "0.2.0",
    "form-data": "^2.3.3",
    "glob": "^7.1.3",
    "idb-keyval": "^3.1.0",
    "indexeddb-getall-shim": "^1.3.5",
    "inferno-compat": "^7.1.9",
    "intersection-observer": "^0.5.1",
    "localstorage-memory": "^1.0.3",
    "lodash-es": "^4.17.11",
    "lodash-webpack-plugin": "^0.11.5",
    "mkdirp": "^0.5.1",
    "node-fetch": "^2.3.0",
    "node-sass": "^4.11.0",
    "npm-run-all": "^4.1.5",
    "p-any": "^1.1.0",
    "page-lifecycle": "^0.1.1",
    "performance-now": "^2.1.0",
    "pinch-zoom-element": "^1.1.1",
    "prop-types": "^15.7.2",
    "quick-lru": "^2.0.0",
    "remount": "^0.9.5",
    "requestidlecallback": "^0.3.0",
    "rollup": "^1.3.2",
    "rollup-plugin-replace": "^2.1.0",
    "rollup-plugin-terser": "^4.0.4",
    "sapper": "nolanlawson/sapper#for-pinafore-10",
    "stringz": "^1.0.0",
    "svelte": "^2.16.1",
    "svelte-extras": "^2.0.2",
    "svelte-loader": "^2.13.3",
    "svelte-transitions": "^1.2.0",
    "svgo": "^1.2.0",
    "terser-webpack-plugin": "^1.2.3",
    "text-encoding": "^0.7.0",
    "tiny-queue": "^0.2.1",
    "webpack": "^4.29.6",
    "webpack-bundle-analyzer": "^3.0.4"
  },
  "devDependencies": {
    "assert": "^1.4.1",
    "eslint-plugin-html": "^5.0.3",
    "mocha": "^6.0.2",
    "now": "^14.0.1",
    "standard": "^12.0.1",
    "testcafe": "^1.1.0"
  },
  "engines": {
    "node": ">= 8"
  },
  "standard": {
    "globals": [
      "fetch",
      "IDBKeyRange",
      "IDBObjectStore",
      "indexedDB",
      "requestAnimationFrame",
      "requestIdleCallback",
      "location",
      "localStorage",
      "IntersectionObserver",
      "URL",
      "Event",
      "history",
      "performance",
      "self",
      "caches",
      "__routes__",
      "__shell__",
      "__assets__",
      "test",
      "fixture",
      "Element",
      "FormData",
      "atob",
      "btoa",
      "Blob",
      "Element",
      "Image",
      "NotificationEvent",
      "NodeList",
      "DOMParser",
      "CSS",
      "customElements"
    ],
    "ignore": [
      "dist",
      "src/routes/_utils/asyncModules.js",
      "src/routes/_utils/asyncPolyfills.js",
      "src/routes/_components/dialog/asyncDialogs.js"
    ]
  },
  "esm": {
    "mode": "auto",
    "cjs": "vars"
  },
  "greenkeeper": {
    "ignore": [
      "sapper"
    ]
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/nolanlawson/pinafore.git"
  },
  "keywords": [],
  "author": "Nolan Lawson <nolan@nolanlawson.com>",
  "license": "AGPL-3.0-only",
  "bugs": {
    "url": "https://github.com/nolanlawson/pinafore/issues"
  },
  "homepage": "https://github.com/nolanlawson/pinafore#readme"
}
