{
  "private": true,
  "name": "{{ name }}",
  "version": "{{ version }}",
  "<Settings>": "------------------------------ Application Settings ------------------------------",
  "babel": {
    "presets": [
      "env",
      "jest",
      "react"
    ],
    "plugins": [
      "transform-decorators-legacy",
      "transform-class-properties",
      "transform-runtime",
      ["module-resolver", {
        "root": ["./src"]
      }]
    ]
  },
  "commitlint": {
    "extends": [
      "@commitlint/config-conventional"
    ]
  },
  "config": {
    "commitizen": {
      "path": "cz-conventional-changelog"
    }
  },
  "eslintConfig": {
    "root": true,
    "parser": "babel-eslint",
    "env": {
      "node": true,
      "jest/globals": true
    },
    "extends": "airbnb-base",
    "plugins": [
      "html",
      "jest"
    ],
    "rules": {
      "semi": [
        "error",
        "never"
      ]
    },
    "settings": {
      "import/resolver": {
        "babel-module": {
          "root": [
            "./src"
          ]
        }
      }
    }
  },
  "lint-staged": {
    "src/**/*.{js,jsx,css,less,scss}": [
      "prettier-standard",
      "git add"
    ]
  },
  "jest": {
    "collectCoverageFrom": [
      "!src/__tests__/bootstrap.js",
      "src/**/*.{js,jsx}"
    ],
    "setupTestFrameworkScriptFile": "<rootDir>/src/__tests__/bootstrap.js",
    "testPathIgnorePatterns": [
      "/node_modules/",
      "<rootDir>/src/__tests__/bootstrap.js"
    ]
  },
  "per-env": {
    "development": {
      "port": "9394"
    },
    "production": {
      "port": "9394",
      "image": "fastify/server"
    }
  },
  "</Settings>": "------------------------ End of Application Settings ------------------------------",
  "scripts": {
    "precommit": "lint-staged",
    "commit": "git add . && git-cz",
    "commitmsg": "commitlint -e $GIT_PARAMS",
    "lint": "eslint --ext .jsx,.js src",
    "test": "cross-env NODE_ENV=test TIMEOUT=10000 jest --forceExit",
    "<Env>": "--------------------------------------------------------------------------------",
    "build": "per-env",
    "build:development": "rimraf dist && babel src -d dist",
    "build:production": "docker build -t ${image} .",
    "start": "per-env",
    "start:development": "nodemon --exec babel-node src/main.js",
    "start:production": "docker run --env-file .env -d -p ${port}:${port} -v $(PWD)/logs:/home/www/logs ${image}",
    "bash": "per-env",
    "bash:production": "docker exec -it $(docker ps -q --filter ancestor=${image}) /bin/bash",
    "stop": "per-env",
    "stop:production": "docker stop $(docker ps -q --filter ancestor=${image})",
    "rmi": "per-env",
    "rmi:production": "docker rmi ${image}"
  }
}
