{
  "name": "tesselle",
  "version": "0.1.0",
  "description": "an image annotation and publication tool",
  "repository": {
    "type": "git",
    "url": "git://github.com/medialab/tesselle.git"
  },
  "homepage": "https://medialab.github.io/tesselle",
  "engines": {
    "npm": ">=5",
    "node": ">=8.10.0"
  },
  "author": "Arnaud Pichon",
  "contributors": [
    "Robin de Mourat"
  ],
  "license": "AGPL-3.0",
  "scripts": {
    "analyze:clean": "rimraf stats.json",
    "preanalyze": "npm run analyze:clean",
    "analyze": "node ./internals/scripts/analyze.js",
    "extract-intl": "node ./internals/scripts/extract-intl.js",
    "npmcheckversion": "node ./internals/scripts/npmcheckversion.js",
    "preinstall": "npm run npmcheckversion",
    "prebuild": "npm run build:clean",
    "build": "cross-env NODE_ENV=production webpack --config internals/webpack/webpack.prod.babel.js --color -p --progress --hide-modules --display-optimization-bailout;",
    "build:clean": "rimraf ./build",
    "start": "cross-env NODE_ENV=development node server",
    "start:tunnel": "cross-env NODE_ENV=development ENABLE_TUNNEL=true node server",
    "start:production": "npm run test && npm run build && npm run start:prod",
    "start:prod": "cross-env NODE_ENV=production node server",
    "presetup": "npm i chalk shelljs",
    "setup": "node ./internals/scripts/setup.js",
    "clean": "shjs ./internals/scripts/clean.js",
    "clean:all": "npm run analyze:clean && npm run test:clean && npm run build:clean",
    "generate": "plop --plopfile internals/generators/index.js",
    "lint": "npm run lint:js && npm run lint:css && npm run lint:ts",
    "lint:css": "stylelint './app/**/*.js'",
    "lint:eslint": "eslint --ignore-path .gitignore --ignore-pattern internals/scripts",
    "lint:eslint:fix": "eslint --ignore-path .gitignore --ignore-pattern internals/scripts --fix",
    "lint:js": "npm run lint:eslint -- . ",
    "lint:ts": "npm run lint:tslint",
    "lint:tslint": "tslint --config ./tslint.json --project ./tsconfig.json --fix",
    "lint:staged": "lint-staged",
    "pretest": "npm run test:clean && npm run lint",
    "test:clean": "rimraf ./coverage",
    "test": "cross-env NODE_ENV=test jest --coverage",
    "test:watch": "cross-env NODE_ENV=test jest --watchAll",
    "coveralls": "cat ./coverage/lcov.info | coveralls",
    "prettify": "prettier --write",
    "gh-page": "node ./internals/scripts/prepublish.js; node ./internals/scripts/publish.js",
    "publish": "npm run build && npm run gh-page"
  },
  "eslintIgnore": [
    "**/*.ts",
    "**/*.tsx"
  ],
  "lint-staged": {
    "*.js": [
      "npm run lint:eslint:fix",
      "git add --force"
    ],
    "*.json": [
      "prettier --write",
      "git add --force"
    ],
    "*.ts": "npm run lint:tslint",
    "*.tsx": "npm run lint:tslint"
  },
  "pre-commit": "lint:staged",
  "resolutions": {
    "babel-core": "7.0.0-bridge.0"
  },
  "dependencies": {
    "@babel/polyfill": "7.2.5",
    "@fortawesome/fontawesome-svg-core": "^1.2.15",
    "@fortawesome/free-solid-svg-icons": "^5.7.2",
    "@fortawesome/react-fontawesome": "^0.1.4",
    "@turf/turf": "^5.1.6",
    "@types/classnames": "^2.2.7",
    "@types/leaflet": "^1.4.4",
    "@types/leaflet-draw": "^0.4.14",
    "@types/lodash": "^4.14.136",
    "@types/react-beautiful-dnd": "^11.0.2",
    "@types/react-leaflet": "^2.2.1",
    "@types/react-modal": "^3.8.3",
    "@types/react-redux": "^7.1.0",
    "@types/react-redux-toastr": "^7.4.1",
    "@types/react-textarea-autosize": "^4.3.4",
    "@types/sat": "0.0.30",
    "classnames": "^2.2.6",
    "compression": "1.7.3",
    "connected-react-router": "6.3.2",
    "cross-env": "^5.2.0",
    "express": "^4.16.4",
    "file-saver": "^2.0.2",
    "fontfaceobserver": "2.1.0",
    "formik": "^1.5.7",
    "geojson": "^0.5.0",
    "history": "4.7.2",
    "hoist-non-react-statics": "3.3.0",
    "immutable": "^4.0.0-rc.12",
    "immutable-geojson": "^0.2.0",
    "intl": "1.2.5",
    "invariant": "2.2.4",
    "ip": "^1.1.5",
    "jest": "^24.9.0",
    "jszip": "^3.2.1",
    "leaflet": "^1.5.1",
    "leaflet-draw": "^1.0.4",
    "leaflet-editable": "^1.2.0",
    "loadable-components": "2.2.3",
    "localforage": "^1.7.3",
    "lodash": "^4.17.15",
    "minimist": "1.2.0",
    "mnemonist": "^0.30.0",
    "normalize-url": "^4.3.0",
    "quinoa-design-library": "^0.1.9",
    "ramda": "^0.26.1",
    "react": "16.8.6",
    "react-accessible-accordion": "^3.0.0",
    "react-beautiful-dnd": "^11.0.4",
    "react-browser-hooks": "^2.2.3",
    "react-dom": "16.8.6",
    "react-error-boundary": "^1.2.5",
    "react-file-drop": "^0.2.8",
    "react-helmet": "5.2.1",
    "react-hook-mousetrap": "^2.0.2",
    "react-intl": "2.8.0",
    "react-leaflet": "^2.4.0",
    "react-leaflet-control": "^2.1.1",
    "react-markdown": "^4.1.0",
    "react-modal": "^3.8.1",
    "react-redux": "^7.1.0",
    "react-redux-toastr": "^7.5.1",
    "react-router": "5.0.1",
    "react-router-dom": "5.0.1",
    "react-textarea-autosize": "^7.1.0",
    "redux": "4.0.1",
    "redux-saga": "1.0.2",
    "reselect": "4.0.0",
    "sanitize.css": "10.0.0",
    "typesafe-actions": "^4.2.1",
    "typings-for-css-modules-loader": "^1.7.0",
    "uuid": "^3.3.2",
    "warning": "4.0.3"
  },
  "devDependencies": {
    "@babel/cli": "7.2.3",
    "@babel/core": "7.3.4",
    "@babel/plugin-proposal-class-properties": "7.3.4",
    "@babel/plugin-syntax-dynamic-import": "7.2.0",
    "@babel/plugin-transform-modules-commonjs": "7.2.0",
    "@babel/plugin-transform-react-constant-elements": "7.2.0",
    "@babel/plugin-transform-react-inline-elements": "7.2.0",
    "@babel/preset-env": "7.3.4",
    "@babel/preset-react": "7.0.0",
    "@babel/register": "7.0.0",
    "@types/chai": "^4.1.7",
    "@types/chai-enzyme": "^0.6.6",
    "@types/enzyme": "^3.9.0",
    "@types/expect": "^1.20.4",
    "@types/express": "^4.16.1",
    "@types/fontfaceobserver": "0.0.6",
    "@types/hoist-non-react-statics": "^3.3.0",
    "@types/invariant": "^2.2.29",
    "@types/jest": "^24.0.11",
    "@types/mocha": "^5.2.6",
    "@types/node": "^11.11.1",
    "@types/prop-types": "^15.7.0",
    "@types/react": "^16.8.7",
    "@types/react-dom": "^16.8.2",
    "@types/react-helmet": "^5.0.8",
    "@types/react-intl": "^2.3.17",
    "@types/react-router-dom": "^4.3.3",
    "@types/redux-devtools": "^3.0.46",
    "@types/redux-devtools-dock-monitor": "^1.1.33",
    "@types/redux-devtools-log-monitor": "^1.0.34",
    "@types/sinon": "^7.0.9",
    "@types/systemjs": "^0.20.6",
    "@types/webpack": "^4.4.25",
    "@types/webpack-env": "^1.13.9",
    "add-asset-html-webpack-plugin": "3.1.3",
    "awesome-typescript-loader": "^5.2.1",
    "babel-core": "7.0.0-bridge.0",
    "babel-eslint": "10.0.1",
    "babel-loader": "8.0.5",
    "babel-plugin-dynamic-import-node": "2.2.0",
    "babel-plugin-lodash": "3.3.4",
    "babel-plugin-react-intl": "3.0.1",
    "babel-plugin-react-transform": "3.0.0",
    "babel-plugin-transform-react-remove-prop-types": "0.4.24",
    "chalk": "^2.4.2",
    "circular-dependency-plugin": "5.0.2",
    "compare-versions": "3.4.0",
    "compression-webpack-plugin": "2.0.0",
    "coveralls": "3.0.3",
    "css-loader": "2.1.1",
    "deep-diff": "^1.0.2",
    "enzyme": "3.9.0",
    "enzyme-adapter-react-16": "1.10.0",
    "enzyme-to-json": "3.3.5",
    "eslint": "5.15.1",
    "eslint-config-airbnb": "17.1.0",
    "eslint-config-airbnb-base": "13.1.0",
    "eslint-config-prettier": "4.1.0",
    "eslint-import-resolver-webpack": "0.11.0",
    "eslint-plugin-import": "2.16.0",
    "eslint-plugin-jsx-a11y": "6.2.1",
    "eslint-plugin-prettier": "3.0.1",
    "eslint-plugin-react": "7.12.4",
    "eslint-plugin-redux-saga": "1.0.0",
    "file-loader": "3.0.1",
    "gh-pages": "^2.0.1",
    "html-loader": "0.5.5",
    "html-webpack-plugin": "3.2.0",
    "image-webpack-loader": "^4.6.0",
    "immutablediff": "^0.4.4",
    "imports-loader": "0.8.0",
    "jest-canvas-mock": "^2.1.1",
    "jest-cli": "24.4.0",
    "lint-staged": "8.1.5",
    "ngrok": "3.1.1",
    "node-plop": "0.18.0",
    "null-loader": "0.1.1",
    "offline-plugin": "5.0.6",
    "plop": "2.3.0",
    "pre-commit": "1.2.2",
    "prettier": "1.16.4",
    "react-app-polyfill": "1.0.1",
    "react-test-renderer": "16.8.6",
    "rimraf": "2.6.3",
    "shelljs": "^0.8.3",
    "style-loader": "0.23.1",
    "stylelint": "9.10.1",
    "stylelint-config-recommended": "2.1.0",
    "stylelint-config-styled-components": "^0.1.1",
    "stylelint-processor-styled-components": "^1.8.0",
    "svg-url-loader": "2.3.2",
    "terser-webpack-plugin": "1.2.3",
    "ts-jest": "^24.0.0",
    "ts-node": "^8.0.3",
    "tsconfig-paths": "^3.8.0",
    "tsconfig-paths-webpack-plugin": "^3.2.0",
    "tslint": "^5.13.1",
    "tslint-loader": "^3.5.4",
    "tslint-react": "^4.0.0",
    "typescript": "^3.4.5",
    "url-loader": "1.1.2",
    "webpack": "4.29.6",
    "webpack-cli": "3.2.3",
    "webpack-dev-middleware": "3.6.1",
    "webpack-hot-middleware": "2.24.3 ",
    "webpack-pwa-manifest": "4.0.0",
    "whatwg-fetch": "3.0.0"
  }
}
