{
  "name": "<%= name %>",
  "version": "1.0.0",
  "license": "MIT",
  "sideEffects": [
    "*.css",
    "*.scss"
  ],
  "scripts": {
    "tsc": "./node_modules/.bin/tsc",

    <% if (testing) { %>
    "karma": "./node_modules/.bin/karma",
    "test:watch:detached": "NODE_OPTIONS=\"--max-old-space-size=4096\" DETACHED=true yarn karma:start",
    "test:ci": "CI=true yarn karma:start --single-run",
    <% } %>

    "webpack": "./node_modules/.bin/webpack-cli",
    "webpack-dev": "./node_modules/.bin/webpack-dev-server",
    "start:dev": "REVISION=$(git rev-parse HEAD) BUILD_DATE=$(date) yarn webpack-dev",
    "webpack:build": "BUILD_DATE=$(date) NODE_ENV=production yarn webpack --env production",
    "webpack:analyze": "./node_modules/.bin/webpack-bundle-analyzer dist/stats.json",
    "analyze": "./scripts/analyze.sh && yarn webpack:analyze",
    "karma:start": "yarn karma start ./tests/karma.conf.js --fail-on-empty-test-suite",
    "lint:js": "yarn eslint . --ext .js --ext .ts --ext .jsx --ext .tsx",
    "lint:js:fix": "yarn lint --fix",
    "typecheck": "yarn tsc --noEmit"
  },
  "dependencies": {
    <% if (dotnetBackend) { %>
    "@aspnet/signalr": "^1.0.4",
    "@ssv/signalr-client": "^1.0.0",
    <% } %>

    <% if (materialUi) { %>
    "@material-ui/core": "^3.1.0",
    "@material-ui/icons": "^3.0.1",
    <% } %>

    <% if (jsonapi)  { %>
    "@orbit/coordinator": "^0.15.14",
    "@orbit/core": "^0.15.14",
    "@orbit/data": "^0.15.14",
    "@orbit/indexeddb": "^0.15.14",
    "@orbit/indexeddb-bucket": "^0.15.14",
    "@orbit/jsonapi": "^0.15.15",
    "@orbit/local-storage-bucket": "^0.15.14",
    "@orbit/store": "^0.15.14",
    "react-orbitjs": "github:DeveloperTown/react-orbitjs#286b0d082a68f6d255745a9a6f054847e0de0a4c",
    <% } %>

    <% if (auth0) { %>
    "auth0-js": "^9.6.1",
    "auth0-lock": "^11.7.2",
    "jwt-decode": "^2.2.0",
    <% } %>

    <% if (i18n) { %>
    "i18next": "^15.0.0",
    "i18next-browser-languagedetector": "^3.0.0",
    "i18next-icu": "^1.0.1",
    "i18next-service-backend": "^1.0.5",
    "i18next-xhr-backend": "^2.0.0",
    "react-i18next": "^10.0.2",
    <% } %>

    <% if (redux) { %>
    "react-redux": "^6.0.0",
    "redux": "^4.0.0",
    "typescript-fsa": "^3.0.0-beta-2",
    "redux-saga": "^1.0.0",
    <% } %>

    "md5-hash": "^1.0.1",

    "query-string": "^6.1.0",
    "react": "^16.8.0",
    "react-dom": "^16.8.0",
    "react-router": "^4.3.1",
    "react-router-dom": "^4.3.1",
    "recompose": "^0.30.0"
  },
  "devDependencies": {
    "@developertown/react-generators-blueprint": "*",
    "ember-cli": "^3.8.1",
    "@babel/core": "^7.2.2",
    "@babel/plugin-proposal-class-properties": "^7.3.0",
    "@babel/plugin-proposal-decorators": "^7.3.0",
    "@babel/plugin-proposal-object-rest-spread": "^7.3.1",
    "@babel/plugin-syntax-dynamic-import": "^7.2.0",
    "@babel/plugin-transform-runtime": "^7.2.0",
    "@babel/preset-env": "^7.3.1",
    "@babel/preset-react": "^7.0.0",
    "@babel/preset-typescript": "^7.1.0",

    <% if (auth0) { %>
    "@types/auth0-js": "^8.11.2",
    "@types/auth0-lock": "^11.4.4",
    "@types/jwt-decode": "^2.2.1",
    <% } %>

    <% if (i18n) { %>
    "@types/i18next-browser-languagedetector": "^2.0.1",
    "@types/i18next-xhr-backend": "^1.4.1",
    "@types/react-i18next": "^8.1.0",
    <% } %>

    <% if (redux) { %>
    "@types/react-redux": "^7.0.0",
    <% } %>

    <% if (testing) { %>
    "@types/chai": "^4.1.3",
    "@types/chai-dom": "^0.0.7",
    "@types/mocha": "^5.2.1",
    "@types/sinon": "^7.0.0",
    "@types/sinon-chai": "^3.2.0",

    "@bigtest/interactor": "0.9.2",
    "@bigtest/mirage": "^0.0.1",
    "@bigtest/mocha": "^0.5.0",
    "@bigtest/react": "^0.1.1",
    "@pollyjs/adapter-fetch": "^1.0.0",
    "@pollyjs/adapter-xhr": "^2.0.0",
    "@pollyjs/cli": "^2.0.0",
    "@pollyjs/core": "^1.0.0",
    "@pollyjs/persister-rest": "^2.0.0",
    "chai": "^4.1.2",
    "chai-dom": "^1.8.0",
    "chai-subset": "^1.6.0",
    "istanbul-instrumenter-loader": "^3.0.1",
    "karma": "^4.0.0",
    "karma-chai": "^0.1.0",
    "karma-chrome-launcher": "^2.2.0",
    "karma-coverage-istanbul-reporter": "^2.0.4",
    "karma-firefox-launcher": "^1.1.0",
    "karma-iframes": "^1.2.0",
    "karma-mocha": "^1.3.0",
    "karma-mocha-reporter": "^2.2.5",
    "karma-parallel": "^0.3.0",
    "karma-typescript": "^4.0.0",
    "karma-webpack": "^3.0.0",
    "karma-webpack-grep": "^1.0.1",
    "mocha": "^5.2.0",
    "react-test-renderer": "^16.4.0",
    "sinon": "7.2.3",
    "sinon-chai": "^3.2.0",
    <% } %>


    "@types/react": "^16.0.38",
    "@types/react-dom": "^16.0.4",
    "@types/react-router": "^4.0.26",
    "@types/react-router-dom": "^4.2.7",
    "@types/recompose": "0.30.3",

    "@types/webpack": "^4.4.0",
    "@types/webpack-env": "^1.13.6",
    "@typescript-eslint/eslint-plugin": "^1.1.0",
    "@typescript-eslint/parser": "^1.1.0",
    "babel-loader": "^8.0.5",

    "copy-webpack-plugin": "^4.6.0",
    "css-loader": "^2.0.0",
    "dotenv": "^6.0.0",
    "eslint": "^5.8.0",
    "eslint-config-prettier": "^3.1.0",
    "eslint-config-typescript": "^2.0.0",
    "eslint-plugin-import": "^2.14.0",
    "eslint-plugin-prettier": "^3.0.1",
    "eslint-plugin-react": "^7.12.4",
    "eslint-plugin-typescript": "0.14.0",
    "file-loader": "^3.0.0",
    "html-webpack-plugin": "^3.2.0",
    "html-webpack-root-plugin": "^0.10.0",
    "http-proxy-middleware": "^0.19.0",
    "http-shutdown": "^1.2.0",
    "ignore-loader": "^0.1.2",

    "prettier": "^1.14.3",
    "redux-devtools-extension": "^2.13.5",
    "serve-static": "^1.13.2",

    "sass-loader": "^7.0.3",
    "static-route-paths": "^0.2.2",

    "node-sass": "^4.9.0",
    "source-map-loader": "^0.2.4",
    "style-loader": "^0.23.0",
    "tsconfig-paths": "^3.3.2",
    "tsconfig-paths-webpack-plugin": "^3.2.0",
    "typescript": "^3.0.1",
    "typescript-eslint-parser": "^22.0.0",
    "url-loader": "^1.0.1",
    "webpack": "^4.2.0",
    "webpack-bundle-analyzer": "^3.0.2",
    "webpack-cli": "^3.0.3",
    "webpack-dev-server": "^3.1.4",
    "webpack-node-externals": "^1.7.2"
  },
  "resolutions": {
    "react": "^16.8.0",
    "react-dom": "^16.8.0"
  },
  "toolchain": {
    "node": "10.15.3",
    "yarn": "1.15.2"
  }
}
