eslint-config-with-prettier
This package provides Airbnb's .eslintrc.yml with prettier as an extensible shared config.
- If you do not want to install and setup eslint with all configs and plugins.
- Install and extend eslint-config-with-prettier it works as create-react-app but for eslint, linting with prettier.
Usage
1. install config
yarn add --dev eslint-config-with-prettier
or
npm install --dev eslint-config-with-prettier
2. extend config
- .eslintrc.yml
extends: - eslint-config-with-prettier
- .eslintrc.js
moduleexports = extends: "eslint-config-with-prettier";
- .eslintrc.json
You can expect
- linting using eslint
- extended Airbnb config
- pretty printing using prettier on
eslint --fix
- bash script for additional setup
Tools:
Configs:
Plugins:
- eslint-plugin-flowtype
- eslint-plugin-import
- eslint-plugin-jest
- eslint-plugin-jsx-a11y
- eslint-plugin-prettier
- eslint-plugin-react
eslint-plugin-dollar-sign
adding support to- helpful for ES6 code that uses jQuery
extends: - eslint-config-with-prettierplugins: # https://github.com/erikdesjardins/eslint-plugin-dollar-sign - dollar-signrules: # Require dollar sign for some variables that holds jQuery objects dollar-sign/dollar-sign: - error - ignoreProperties
- .eslintrc.js
moduleexports = extends: "eslint-config-with-prettier" plugins: "dollar-sign" rules: "dollar-sign/dollar-sign": "error" "ignoreProperties" ;
- .eslintrc.json
running setup script
✋!!!on your own risk!!!✋, commit before running the script and control the output using diff in version control.
setup.sh that run gist example
bash ./node_modules/eslint-config-with-prettier/setup.sh
If you do not want to run the bash script you can simply copy files into your project.
This script adds useful files into your project.
- .editorconfig
- .babelrc
- babel-preset-react-app: https://www.npmjs.com/package/babel-preset-react-app
- babel-plugin-styled-components: https://github.com/styled-components/babel-plugin-styled-components
- .eslintignore
- .prettierrc
- .gitignore
- npm lint and test scripts (scripts will merge into package.json)
- lint and pretty print
- test
- precommit -> lint-staged for
- javascript:
*.js
,*.jsx
- html, styles and other files:
html,md,mdx,yaml,json,css,scss,less
- images:
png
,jpeg
,jpg
,gif
,svg
- javascript:
- prepush -> test:coverage and flow:errors
"scripts": ,"husky": ,"lint-staged":
- enzyme component testing with settings for jest-serializer-enzyme
- .flowconfig
- npm flow scripts (scripts will be merged into package.json)
"scripts":