Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
This project manages its dependencies using npm. Learn more
package.json 7.25 KiB
{
  "name": "metabase",
  "private": true,
  "version": "0.0.0",
  "description": "Metabase Analytics Report Server",
  "repository": "https://github.com/metabase/metabase",
  "license": "private",
  "engines": {
    "node": ">=8.11.4",
    "npm": "8.11.4"
  },
  "dependencies": {
    "ace-builds": "^1.2.2",
    "babel-polyfill": "^6.6.1",
    "c-3po": "^0.7.3",
    "chevrotain": "0.21.0",
    "classlist-polyfill": "^1.2.0",
    "classnames": "^2.1.3",
    "color": "^3.0.0",
    "color-harmony": "^0.3.0",
    "crossfilter": "^1.3.12",
    "cxs": "^5.0.0",
    "d3": "^3.5.17",
    "d3-scale": "^2.1.0",
    "dc": "^2.0.0",
    "diff": "^3.2.0",
    "grid-styled": "^4.1.0",
    "history": "3",
    "humanize-plus": "^1.8.1",
    "icepick": "2.3.0",
    "iframe-resizer": "^3.5.11",
    "inflection": "^1.7.1",
    "isomorphic-fetch": "^2.2.1",
    "js-cookie": "^2.1.2",
    "jsrsasign": "^7.1.0",
    "leaflet": "^1.2.0",
    "leaflet-draw": "^0.4.9",
    "leaflet.heat": "^0.2.0",
    "lodash.memoize": "^4.1.2",
    "moment": "2.19.3",
    "mustache": "^2.3.2",
    "node-libs-browser": "^2.0.0",
    "normalizr": "^3.0.2",
    "npm": "^5.8.0",
    "number-to-locale-string": "^1.0.1",
    "password-generator": "^2.0.1",
    "prop-types": "^15.5.7",
    "react": "15",
    "react-addons-shallow-compare": "^15.2.1",
    "react-ansi-style": "^1.0.0",
    "react-collapse": "^4.0.3",
    "react-copy-to-clipboard": "^5.0.1",
    "react-dnd": "3",
    "react-dnd-html5-backend": "3",
    "react-dom": "15",
    "react-draggable": "^2.2.3",
    "react-element-to-jsx-string": "^13.1.0",
    "react-hot-loader": "^1.3.0",
    "react-markdown": "^3.0.0-rc3",
    "react-motion": "^0.4.5",
    "react-redux": "^5.0.4",
    "react-resizable": "^1.0.1",
    "react-retina-image": "^2.0.5",
    "react-router": "3",
    "react-router-redux": "^4.0.8",
    "react-sortable-hoc": "^0.6.8",
    "react-textarea-autosize": "^5.2.1",
    "react-transition-group": "1",
    "react-virtualized": "^9.7.2",
    "recompose": "^0.26.0",
    "redux": "^3.5.2",
    "redux-actions": "^2.0.1",
    "redux-auth-wrapper": "^1.0.0",
    "redux-form": "5",
    "redux-logger": "^3.0.1",
    "redux-promise": "^0.5.0",
    "redux-router": "^2.1.2",
    "redux-thunk": "^2.0.1",
    "reselect": "^3.0.0",
    "resize-observer-polyfill": "^1.3.2",
    "screenfull": "^3.0.0",
    "simple-statistics": "^3.0.0",
    "stack-source-map": "^1.0.4",
    "system-components": "^2.0.3",
    "tether": "^1.2.0",
    "underscore": "^1.8.3",
    "webpack-dev-middleware": "^1.12.0",
    "z-index": "0.0.1"
  },
  "devDependencies": {
    "@slack/client": "^3.5.4",
    "babel-cli": "^6.11.4",
    "babel-core": "^6.20.0",
    "babel-eslint": "^7.1.1",
    "babel-loader": "^7.1.2",
    "babel-plugin-add-react-displayname": "^0.0.4",
    "babel-plugin-c-3po": "0.8.0-0",
    "babel-plugin-styled-components": "^1.5.1",
    "babel-plugin-syntax-trailing-function-commas": "^6.22.0",
    "babel-plugin-transform-builtin-extend": "^1.1.2",
    "babel-plugin-transform-decorators-legacy": "^1.3.4",
    "babel-plugin-transform-flow-strip-types": "^6.8.0",
    "babel-preset-es2015": "^6.6.0",
    "babel-preset-react": "^6.5.0",
    "babel-preset-stage-0": "^6.5.0",
    "babel-register": "^6.11.6",
    "banner-webpack-plugin": "^0.2.3",
    "color-diff": "^1.1.0",
    "concurrently": "^3.1.0",
    "css-loader": "^0.28.7",
    "documentation": "^4.0.0-rc.1",
    "enzyme": "2",
    "eslint": "^3.5.0",
    "eslint-import-resolver-webpack": "^0.8.3",
    "eslint-loader": "^1.9.0",
    "eslint-plugin-flowtype": "^2.22.0",
    "eslint-plugin-import": "^2.2.0",
    "eslint-plugin-jasmine": "^2.2.0",
    "eslint-plugin-react": "^6.3.0",
    "exports-loader": "^0.6.3",
    "extract-text-webpack-plugin": "^3.0.1",
    "file-loader": "^0.11.1",
    "flow-bin": "^0.37.4",
    "fs-promise": "^2.0.2",
    "glob": "^7.1.1",
    "html-webpack-harddisk-plugin": "^0.1.0",
    "html-webpack-plugin": "^2.30.1",
    "image-diff": "^1.6.3",
    "imports-loader": "^0.7.0",
    "insightful": "^1.1.0",
    "jasmine": "^2.4.1",
    "jasmine-core": "^2.4.1",
    "jasmine-promises": "^0.4.1",
    "jasmine-reporters": "^2.2.0",
    "jasmine-spec-reporter": "^3.0.0",
    "jest": "^19.0.2",
    "jest-localstorage-mock": "^2.2.0",
    "jscodeshift": "0.5.0",
    "jsonwebtoken": "^7.2.1",
    "karma": "^1.3.0",
    "karma-chrome-launcher": "^2.0.0",
    "karma-jasmine": "^1.1.0",
    "karma-junit-reporter": "^1.1.0",
    "karma-nyan-reporter": "^0.2.2",
    "karma-webpack": "^2.0.5",
    "lint-staged": "^3.3.1",
    "mockdate": "^2.0.2",
    "postcss-cssnext": "^2.4.0",
    "postcss-import": "^9.0.0",
    "postcss-loader": "^2.0.8",
    "postcss-url": "^6.0.4",
    "prettier": "^1.10.2",
    "promise-loader": "^1.0.0",
    "raf": "^3.4.0",
    "react-test-renderer": "15",
    "sauce-connect-launcher": "^1.1.1",
    "selenium-webdriver": "^2.53.3",
    "style-loader": "^0.19.0",
    "uglifyjs-webpack-plugin": "^1.0.0",
    "unused-files-webpack-plugin": "^3.0.0",
    "webchauffeur": "^1.2.0",
    "webpack": "^3.8.1",
    "webpack-dev-server": "^2.9.1",
    "webpack-postcss-tools": "^1.1.2",
    "xhr-mock": "^2.4.1"
  },
  "scripts": {
    "dev": "concurrently --kill-others -p name -n 'backend,frontend' -c 'blue,green' 'lein ring server' 'yarn build-hot'",
    "lint": "yarn lint-eslint && yarn lint-prettier",
    "lint-eslint": "yarn && eslint --ext .js --ext .jsx --rulesdir frontend/lint/eslint-rules --max-warnings 0 frontend/src frontend/test",
    "lint-prettier": "yarn && prettier -l 'frontend/**/*.{js,jsx,css}' || (echo '\nThese files are not formatted correctly. Did you forget to \"yarn prettier\"?' && false)",
    "flow": "yarn && flow check",
    "test": "yarn test-unit && yarn test-integrated && yarn test-karma",
    "test-integrated": "./bin/build-for-test && yarn test-integrated-no-build",
    "test-integrated-watch": "yarn test-integrated --watch",
    "test-integrated-no-build": "yarn && babel-node ./frontend/test/__runner__/run_integrated_tests.js",
    "test-unit": "yarn && jest --maxWorkers=8 --config jest.unit.conf.json",
    "test-unit-watch": "yarn test-unit --watch",
    "test-unit-update-snapshot": "yarn test-unit --updateSnapshot",
    "test-karma": "yarn && karma start frontend/test/karma.conf.js --single-run",
    "test-karma-watch": "yarn && karma start frontend/test/karma.conf.js --auto-watch --reporters nyan",
    "build": "yarn && webpack --bail",
    "build-watch": "yarn && webpack --watch",
    "build-hot": "yarn && NODE_ENV=hot webpack-dev-server --progress",
    "build-stats": "yarn && webpack --json > stats.json",
    "build-shared": "yarn && webpack --config webpack.shared.config.js",
    "start": "yarn build && lein ring server",
    "precommit": "lint-staged",
    "preinstall": "echo $npm_execpath | grep -q yarn || echo '\\033[0;33mSorry, npm is not supported. Please use Yarn (https://yarnpkg.com/).\\033[0m'",
    "prettier": "prettier --write 'frontend/**/*.{js,jsx,css}'",
    "docs": "documentation build -f html -o frontend/docs frontend/src/metabase-lib/lib/**",
    "ci": "yarn ci-frontend && yarn ci-backend",
    "ci-frontend": "yarn lint && yarn flow && yarn test",
    "ci-backend": "lein docstring-checker && lein bikeshed && lein eastwood && lein test"
  },
  "lint-staged": {
    "frontend/**/*.{js,jsx,css}": [
      "prettier --write",
      "git add"
    ]
  }
}