@netlify/eslint-config-node

7.0.1 • Public • Published

Build Node

Linting and formatting configuration shared by Netlify Node.js repositories:

How to add to a new Node.js repository

If you're creating a new repository, you can use the following GitHub template. Otherwise, please follow those steps:

  • Add a .eslintrc.cjs file to the root of the project. Individual rules and overrides can be tweaked for the specific project.
// Use '@netlify/eslint-config-node/esm' if the repository is using pure ES modules
const { overrides } = require('@netlify/eslint-config-node')

module.exports = {
  extends: '@netlify/eslint-config-node',
  rules: {},
  overrides: [...overrides],
}
  • Add the following .prettierrc.json to the root of the project:
"@netlify/eslint-config-node/.prettierrc.json"
  • Copy the commitlint.config.cjs, .editorconfig and .gitattributes files to the root of the project.
  • Add the following properties to the package.json. Please replace the config globbing expressions to match the files where the source JavaScript/Markdown/HTML/JSON/YAML files are located. npm run format should also be run during npm test and npm run format:ci during CI (example).
{
  "scripts": {
    "format": "run-s format:check-fix:*",
    "format:ci": "run-s format:check:*",
    "format:check-fix:lint": "run-e format:check:lint format:fix:lint",
    "format:check:lint": "cross-env-shell eslint $npm_package_config_eslint",
    "format:fix:lint": "cross-env-shell eslint --fix $npm_package_config_eslint",
    "format:check-fix:prettier": "run-e format:check:prettier format:fix:prettier",
    "format:check:prettier": "cross-env-shell prettier --check $npm_package_config_prettier",
    "format:fix:prettier": "cross-env-shell prettier --write $npm_package_config_prettier"
  },
  "config": {
    "eslint": "--ignore-path .gitignore --cache --format=codeframe --max-warnings=0 \"{src,scripts,tests,.github}/**/*.{cjs,mjs,js,md,html}\" \"*.{cjs,mjs,js,md,html}\" \".*.{cjs,mjs,js,md,html}\"",
    "prettier": "--ignore-path .gitignore --loglevel=warn \"{src,scripts,tests,.github}/**/*.{cjs,mjs,js,md,yml,json,html}\" \"*.{cjs,mjs,js,yml,json,html}\" \".*.{cjs,mjs,js,yml,json,html}\" \"!package-lock.json\""
  }
}
  • Add .eslintcache to the .gitignore

Package Sidebar

Install

npm i @netlify/eslint-config-node

Weekly Downloads

11,305

Version

7.0.1

License

Apache-2.0

Unpacked Size

24.5 kB

Total Files

13

Last publish

Collaborators

  • youvalv
  • berdav
  • vitaliyr
  • smnh
  • denar90
  • kathmbeck
  • rj-netlify
  • akardet
  • pieh
  • hrishikeshk
  • sarahetter
  • orinokai
  • ericap
  • seanroberts
  • skn0tt
  • mikewen
  • biilmann
  • marcus.netlify
  • jgantunes
  • eduardoboucas
  • netlify-bot
  • nasiba
  • ascorbic