{
  "name": "compiler-explorer",
  "description": "Interactively investigate compiler output",
  "author": {
    "name": "Matt Godbolt",
    "email": "matt@godbolt.org",
    "url": "https://xania.org"
  },
  "repository": {
    "type": "git",
    "url": "compiler-explorer/compiler-explorer"
  },
  "version": "0.0.3",
  "engines": {
    "node": ">=16"
  },
  "main": "./app.js",
  "esm": {
    "mode": "all",
    "cache": false
  },
  "dependencies": {
    "@fortawesome/fontawesome-free": "^5.15.4",
    "@sentry/browser": "^6.16.1",
    "@sentry/node": "^6.16.1",
    "aws-sdk": "^2.1048.0",
    "big-integer": "^1.6.51",
    "body-parser": "^1.19.1",
    "bootstrap": "^4.6.1",
    "chart.js": "^3.6.2",
    "clipboard": "^2.0.8",
    "compression": "^1.7.1",
    "copy-webpack-plugin": "^9.1.0",
    "cross-env": "^7.0.3",
    "es6-promise": "^4.2.8",
    "eslint-plugin-header": "^3.1.1",
    "eslint-plugin-prettier": "^4.2.1",
    "esm": "^3.2.25",
    "express": "^4.17.2",
    "file-saver": "^2.0.5",
    "fs-extra": "^10.0.0",
    "golden-layout": "^1.5.9",
    "html-loader": "^3.0.1",
    "http-proxy": "^1.18.1",
    "husky": "^8.0.1",
    "husky-init": "^8.0.0",
    "jquery": "^3.6.0",
    "js-cookie": "^3.0.1",
    "jszip": "^3.7.1",
    "lodash": "^4.17.21",
    "lodash.clonedeep": "^4.5.0",
    "lru-cache": "^5.1.1",
    "lz-string": "^1.4.4",
    "monaco-editor": "^0.32.1",
    "monaco-vim": "^0.3.4",
    "morgan": "^1.10.0",
    "node-graceful": "^3.1.0",
    "node-targz": "^0.2.0",
    "nopt": "^5.0.0",
    "p-queue": "^6.6.2",
    "path-browserify": "^1.0.1",
    "popper.js": "^1.16.1",
    "profanities": "^2.14.0",
    "prom-client": "^14.0.1",
    "pug": "^3.0.2",
    "ramda": "^0.23.0",
    "request": "^2.88.2",
    "response-time": "^2.3.2",
    "sanitize-filename": "^1.6.3",
    "scroll-into-view-if-needed": "^2.2.29",
    "semver": "^7.3.5",
    "serve-favicon": "^2.4.5",
    "shell-quote": "^1.7.3",
    "systemd-socket": "0.0.0",
    "tar-stream": "^2.2.0",
    "temp": "^0.9.4",
    "tom-select": "^2.0.0",
    "tree-kill": "^1.2.2",
    "triple-beam": "^1.3.0",
    "ts-node": "^10.4.0",
    "tslib": "^2.3.1",
    "underscore": "^1.13.2",
    "url-join": "^4.0.1",
    "vis-network": "^9.1.0",
    "whatwg-fetch": "^3.6.2",
    "which": "^2.0.2",
    "winston": "^3.3.3",
    "winston-loki": "^6.0.3",
    "winston-papertrail": "^1.0.5",
    "winston-transport": "^4.4.1",
    "yaml": "^1.10.2",
    "yamljs": "^0.2.9"
  },
  "devDependencies": {
    "@babel/preset-typescript": "^7.16.5",
    "@types/bootstrap": "^5.1.6",
    "@types/fs-extra": "^9.0.13",
    "@types/jquery": "^3.5.10",
    "@types/shell-quote": "^1.7.1",
    "@types/tar-fs": "^2.0.1",
    "@types/underscore": "^1.11.4",
    "@typescript-eslint/eslint-plugin": "^5.8.0",
    "@typescript-eslint/parser": "^5.8.0",
    "ajv": "^8.8.2",
    "ajv-keywords": "^5.1.0",
    "approvals": "https://github.com/approvals/Approvals.NodeJS.git#d3cc041b5b8950e51671038094a3cee3f4eac9be",
    "aws-sdk-mock": "^5.5.0",
    "chai": "^4.3.4",
    "chai-as-promised": "^7.1.1",
    "chai-http": "^4.2.1",
    "cheerio": "^1.0.0-rc.10",
    "codecov": "^3.8.3",
    "css-loader": "^6.5.1",
    "css-minimizer-webpack-plugin": "^3.3.1",
    "cypress": "^9.2.0",
    "deep-equal-in-any-order": "^1.1.15",
    "eslint": "^8.5.0",
    "eslint-config-prettier": "^8.3.0",
    "eslint-formatter-github": "^1.0.11",
    "eslint-import-resolver-typescript": "^2.5.0",
    "eslint-plugin-import": "^2.25.3",
    "eslint-plugin-jsdoc": "^37.4.0",
    "eslint-plugin-node": "^11.1.0",
    "eslint-plugin-promise": "^6.0.0",
    "eslint-plugin-requirejs": "^4.0.1",
    "eslint-plugin-sonarjs": "^0.11.0",
    "eslint-plugin-unicorn": "^40.1.0",
    "file-loader": "^6.2.0",
    "lint-staged": "^13.0.3",
    "mini-css-extract-plugin": "^2.4.5",
    "mocha": "^8.4.0",
    "mock-fs": "^5.1.2",
    "monaco-editor-webpack-plugin": "^7.0.1",
    "nock": "^13.2.1",
    "nyc": "^15.1.0",
    "prettier": "^2.5.1",
    "sass": "^1.45.1",
    "sass-loader": "^12.4.0",
    "sinon": "^13.0.0",
    "source-map-loader": "^3.0.0",
    "supervisor": "^0.12.0",
    "terser-webpack-plugin": "^5.3.0",
    "ts-loader": "^9.2.6",
    "typescript": "^4.7.4",
    "url-loader": "^4.1.1",
    "webpack": "^5.65.0",
    "webpack-cli": "^4.9.1",
    "webpack-dev-middleware": "^5.3.0",
    "webpack-dev-server": "^4.7.1",
    "webpack-manifest-plugin": "^4.0.2"
  },
  "mocha": {
    "require": [
      "esm",
      "test/_setup"
    ]
  },
  "scripts": {
    "ci-lint": "eslint --format github .",
    "ci-test": "nyc npm run test",
    "lint": "eslint . --fix",
    "lint-check": "eslint .",
    "lint-files": "eslint",
    "test": "mocha -b",
    "test-min": "mocha -b --config .mocharc-min.yml",
    "fix": "npm run lint && npm run format && npm run ts-check",
    "check": "npm run ts-check && npm run lint-check && npm run test-min -- --reporter min",
    "dev": "cross-env NODE_ENV=DEV node -r esm -r ts-node/register app.js",
    "debugger": "cross-env NODE_ENV=DEV node --inspect -r esm -r ts-node/register app.js --debug",
    "debug": "cross-env NODE_ENV=DEV node -r esm -r ts-node/register app.js --debug",
    "start": "webpack && cross-env NODE_ENV=LOCAL node -r esm -r ts-node/register app.js",
    "codecov": "codecov --disable=gcov",
    "sentry": "npx -p @sentry/cli sentry-cli",
    "update-browserslist": "npx browserslist@latest -- --update-db",
    "prepare": "husky install",
    "format": "prettier --write .",
    "format-files": "prettier --write --ignore-unknown",
    "ts-compile": "tsc",
    "ts-check": "tsc -p ./tsconfig.backend.json --noEmit --module esnext && tsc -p ./tsconfig.frontend.json --noEmit",
    "webpack": "webpack --node-env=production"
  },
  "lint-staged": {
    "*.[jt]s": [
      "npm run format-files --",
      "npm run lint-files --"
    ],
    "*.{html,md}": [
      "npm run format-files --"
    ]
  },
  "license": "BSD-2-Clause"
}
