@websublime/eslint-config
v1.2.1
Published
ESLint configuration
Downloads
4
Maintainers
Readme
eslint-config
These are my personal configurations for ESLint. They are based on Airbnb's ESLint configurations.
Overview
This repository contains ESLint configurations for the following setups:
- JavaScript
- JavaScript with React
- TypeScript
- TypeScript with React
- Angular
- Vue
They are designed to be used together with Prettier.
Usage
Install the required packages:
JavaScript:
yarn add --dev @websublime/eslint-config \ eslint-config-prettier \ eslint-plugin-simple-import-sort \ && npx install-peerdeps --dev eslint-config-airbnb-base
JavaScript with React:
yarn add --dev @websublime/eslint-config \ eslint-config-prettier \ eslint-plugin-simple-import-sort \ && npx install-peerdeps --dev eslint-config-airbnb
TypeScript:
yarn add --dev @websublime/eslint-config \ eslint-config-prettier \ @typescript-eslint/eslint-plugin \ @typescript-eslint/parser \ eslint-plugin-simple-import-sort \ && npx install-peerdeps --dev eslint-config-airbnb-base
TypeScript with React:
yarn add --dev @websublime/eslint-config \ eslint-config-prettier \ @typescript-eslint/eslint-plugin \ @typescript-eslint/parser \ eslint-plugin-simple-import-sort \ && npx install-peerdeps --dev eslint-config-airbnb
Angular:
yarn add --dev @websublime/eslint-config \ eslint-config-prettier \ @typescript-eslint/eslint-plugin \ @typescript-eslint/parser \ eslint-plugin-simple-import-sort \ && npx install-peerdeps --dev eslint-config-airbnb
Vuejs:
yarn add --dev @websublime/eslint-config \ eslint-config-prettier \ eslint-plugin-vue \ @typescript-eslint/eslint-plugin \ @typescript-eslint/parser \ vue-eslint-parser \ eslint-plugin-simple-import-sort \ && npx install-peerdeps --dev eslint-config-airbnb
Create the following entry in your
package.json
file:JavaScript:
{ "eslintConfig": { "root": true, "extends": ["@websublime/eslint-config"] } }
JavaScript with React:
{ "eslintConfig": { "root": true, "extends": ["@websublime/eslint-config/react"] } }
TypeScript:
{ "eslintConfig": { "root": true, "extends": ["@websublime/eslint-config/typescript"] } }
TypeScript with React:
{ "eslintConfig": { "root": true, "extends": ["@websublime/eslint-config/typescript-react"] } }
Angular:
{ "eslintConfig": { "root": true, "extends": ["@websublime/eslint-config/angular"] } }
Vuejs:
{ "eslintConfig": { "root": true, "extends": ["@websublime/eslint-config/vue"] } }
Add a linting script to your
package.json
file:JavaScript:
{ "scripts": { "lint": "eslint --fix --max-warnings 0 ." } }
JavaScript with React:
{ "scripts": { "lint": "eslint --ext .js,.jsx --fix --max-warnings 0 ." } }
TypeScript:
{ "scripts": { "lint": "eslint --ext .ts --fix --max-warnings 0 ." } }
TypeScript with React:
{ "scripts": { "lint": "eslint --ext .ts,.tsx --fix --max-warnings 0 ." } }