Skip to content

😎 βš™οΈ ESLint configuration for React projects that I do. Feel free to use this!

License

Notifications You must be signed in to change notification settings

wellyshen/eslint-config-welly

Repository files navigation

ESLINT-CONFIG-WELLY

ESlint configuration for my personal React projects, which integrates TypeScript and many awesome features.

build status npm version npm downloads npm downloads All Contributors PRs welcome Twitter URL

Installation

This package is distributed via npm. It requires eslint and typescript.

Install the correct version of each package, which are listed by the command:

npm info "eslint-config-welly@latest" peerDependencies

If using npm 5+, use this shortcut:

npx install-peerdeps --dev eslint-config-welly

Or install each package by yourself:

npm install --save-dev eslint-config-welly eslint@^x.x.x typescript@^x.x.x
# or
yarn add --dev eslint-config-welly eslint@^x.x.x typescript@^x.x.x

Usage

Add the extends to your .eslintrc.js:

module.exports = {
  extends: "welly",
  rules: {
    // your overrides
  },
};

Eliminate Prettier Conflicts for You

Prettier is a great code formatter, I highly recommend you guys give it a try. This package built-ins the eslint-config-prettier for you, all you need to do is setup the Prettier CLI to use it.

// package.json

"format": "prettier --check ."
// or
"format": "prettier --write ."

What's Inside?

This configuration contains the following cool packages.

Package Description Auto Enabled
typescript-eslint Monorepo for all the tooling which enables ESLint to support TypeScript.
eslint-config-airbnb This package provides Airbnb's .eslintrc as an extensible shared config.
eslint-plugin-react React specific linting rules for ESLint.
eslint-plugin-react-hooks This ESLint plugin enforces the Rules of Hooks.
eslint-plugin-import ESLint plugin with rules that help validate proper imports.
eslint-plugin-jsx-a11y Static AST checker for a11y rules on JSX elements.
eslint-plugin-promise Enforce best practices for JavaScript promises.
eslint-plugin-compat Lint the browser compatibility of your code.
eslint-plugin-jest ESLint plugin for Jest. βœ…
eslint-plugin-jest-dom ESLint rules for use with jest-dom. βœ…
eslint-plugin-testing-library ESLint plugin for Testing Library. βœ…
eslint-config-prettier Turns off all rules that are unnecessary or might conflict with Prettier. βœ…

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Welly

πŸ’» πŸ“– 🚧

Alex Du

πŸ“–

This project follows the all-contributors specification. Contributions of any kind welcome!