fabien0102/gatsby-starter

View on GitHub
package.json

Summary

Maintainability
Test Coverage
{
  "name": "gatsby-starter",
  "version": "1.0.0",
  "description": "Gatsby 2 starter",
  "author": "fabien0102 <fabien0102@gmail.com>",
  "license": "MIT",
  "scripts": {
    "start": "gatsby develop",
    "develop": "gatsby develop",
    "build": "gatsby build",
    "lint": "npm run lint:ts && npm run lint:md && npm run lint:js && npm run lint:css",
    "lint:ts": "tslint \"./src/**/*.ts\" \"./src/**/*.tsx\"",
    "lint:md": "remark .",
    "lint:js": "xo",
    "lint:css": "stylelint \"src/**/*.css\"",
    "lint:scss": "stylelint src/**/*.scss --syntax scss",
    "test": "npm run lint && jest",
    "test:watch": "jest --watch",
    "generate": "plop --plopfile ./generators/plopfile.js",
    "graphql-types": "graphql-codegen --config ./graphql-config.yml",
    "storybook": "start-storybook -p 9001 -c .storybook",
    "storybook:build": "build-storybook -c .storybook -o public/docs",
    "codeclimate": "codeclimate-test-reporter < coverage/lcov.info"
  },
  "dependencies": {
    "@graphql-codegen/add": "^1.2.0",
    "@graphql-codegen/cli": "^1.9.0",
    "@graphql-codegen/typescript": "^1.2.0",
    "babel-eslint": "^10.0.1",
    "change-case": "^3.1.0",
    "codeclimate-test-reporter": "^0.5.1",
    "disqus-react": "^1.0.5",
    "gatsby": "^2.18.4",
    "gatsby-link": "^2.1.1",
    "gatsby-plugin-google-analytics": "^2.0.20",
    "gatsby-plugin-manifest": "^2.2.30",
    "gatsby-plugin-offline": "^2.1.1",
    "gatsby-plugin-sharp": "^2.3.4",
    "gatsby-plugin-typescript": "^2.0.15",
    "gatsby-remark-autolink-headers": "^2.0.16",
    "gatsby-remark-copy-linked-files": "^2.0.12",
    "gatsby-remark-images": "^3.0.14",
    "gatsby-remark-prismjs": "^3.2.9",
    "gatsby-source-filesystem": "^2.0.37",
    "gatsby-transformer-json": "^2.1.11",
    "gatsby-transformer-remark": "^2.3.12",
    "gatsby-transformer-sharp": "^2.3.6",
    "gray-matter": "^4.0.2",
    "lodash": "^4.17.15",
    "react": "^16.8.6",
    "react-dom": "^16.8.6",
    "react-helmet": "5.2.1",
    "react-redux": "^7.0.3",
    "react-scripts": "^3.0.1",
    "redux-devtools-extension": "^2.13.8",
    "semantic-ui-react": "^0.87.1",
    "slash": "3.0.0",
    "ts-loader": "^6.0.1"
  },
  "devDependencies": {
    "@babel/core": "^7.4.4",
    "@storybook/addon-actions": "^5.0.11",
    "@storybook/addon-knobs": "^5.0.11",
    "@storybook/addon-links": "^5.0.11",
    "@storybook/addon-notes": "^5.0.11",
    "@storybook/addon-options": "^5.0.11",
    "@storybook/react": "^5.0.11",
    "@types/enzyme": "^3.9.2",
    "@types/jest": "^24.0.23",
    "@types/lodash": "^4.14.130",
    "@types/node": "^12.0.2",
    "@types/reach__router": "^1.2.4",
    "@types/react": "^16.8.19",
    "@types/react-dom": "^16.8.4",
    "@types/react-helmet": "5.0.8",
    "@types/react-redux": "^7.0.9",
    "@types/react-test-renderer": "^16.8.1",
    "@types/semantic-ui": "^2.2.7",
    "@types/storybook-readme": "^5.0.4",
    "@types/webpack-env": "^1.13.9",
    "enzyme": "^3.9.0",
    "enzyme-adapter-react-16": "^1.13.1",
    "eslint": "^5.16.0",
    "eslint-config-react-app": "^4.0.1",
    "eslint-config-xo-react": "0.19.0",
    "eslint-plugin-flowtype": "^2.0.0",
    "eslint-plugin-import": "^2.17.2",
    "eslint-plugin-jsx-a11y": "^6.2.1",
    "eslint-plugin-react": "^7.13.0",
    "eslint-plugin-react-hooks": "^1.6.0",
    "flat": "^4.1.0",
    "husky": "2.3.0",
    "jest": "^24.8.0",
    "lint-staged": "8.1.7",
    "mkdirp": "^0.5.1",
    "plop": "^2.3.0",
    "raw-loader": "^2.0.0",
    "react-test-renderer": "^16.0.0",
    "remark-cli": "^6.0.1",
    "remark-frontmatter": "^1.3.2",
    "remark-preset-lint-recommended": "^3.0.2",
    "storybook-readme": "^5.0.8",
    "stylelint": "^10.0.1",
    "stylelint-config-standard": "^18.3.0",
    "ts-jest": "^24.0.2",
    "ts-lint": "4.5.1",
    "typescript": "^3.5.0",
    "xo": "0.24.0"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "keywords": [
    "gatsby",
    "starter"
  ],
  "jest": {
    "globals": {
      "__LINK_PREFIX__": "",
      "__PREFIX_LINKS__": ""
    },
    "transform": {
      ".(ts|tsx)": "ts-jest"
    },
    "testRegex": "(/__tests__/.*|\\.(test|spec))\\.(ts|tsx|js)$",
    "testPathIgnorePatterns": [
      "/node_modules/",
      "/public/",
      "/templates/",
      "/.cache"
    ],
    "moduleFileExtensions": [
      "ts",
      "tsx",
      "js",
      "jsx"
    ],
    "collectCoverage": true,
    "coverageReporters": [
      "lcov",
      "text",
      "html"
    ]
  },
  "lint-staged": {
    "*.{ts,tsx}": [
      "tslint --fix",
      "git add"
    ],
    "*.{js,jsx}": [
      "xo --fix",
      "git add"
    ],
    "*.md": [
      "node tools/update-post-date.js",
      "remark -o",
      "git add"
    ],
    "*.css": [
      "stylelint"
    ]
  },
  "xo": {
    "extends": "xo-react/space",
    "space": true,
    "rules": {
      "no-case-declarations": 0,
      "default-case": 0
    },
    "ignores": [
      "**/*.tsx",
      "**/*.ts"
    ]
  },
  "remarkConfig": {
    "plugins": [
      "remark-preset-lint-recommended",
      "remark-frontmatter"
    ]
  },
  "stylelint": {
    "extends": "stylelint-config-standard"
  },
  "browserslist": [
    ">0.2%",
    "not dead",
    "not ie <= 11",
    "not op_mini all"
  ],
  "husky": {
    "hooks": {
      "pre-commit": "lint-staged",
      "pre-push": "npm test"
    }
  }
}