samuelmeuli / eslint-config

☑️ My ESLint configuration

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

They are designed to be used together with Prettier.

Usage

  1. Install the required packages:

    • JavaScript:

      yarn add --dev @samuelmeuli/eslint-config \
        eslint-config-prettier \
        && npx install-peerdeps --dev eslint-config-airbnb-base
    • JavaScript with React:

      yarn add --dev @samuelmeuli/eslint-config \
        eslint-config-prettier \
        && npx install-peerdeps --dev eslint-config-airbnb
    • TypeScript:

      yarn add --dev @samuelmeuli/eslint-config \
        eslint-config-prettier \
        @typescript-eslint/eslint-plugin \
        @typescript-eslint/parser \
        && npx install-peerdeps --dev eslint-config-airbnb-base
    • TypeScript with React:

      yarn add --dev @samuelmeuli/eslint-config \
        eslint-config-prettier \
        @typescript-eslint/eslint-plugin \
        @typescript-eslint/parser \
        && npx install-peerdeps --dev eslint-config-airbnb
  2. Create the following entry in your package.json file:

    • JavaScript:

      {
      	"eslintConfig": {
      		"root": true,
      		"extends": ["@samuelmeuli/eslint-config"]
      	}
      }
    • JavaScript with React:

      {
      	"eslintConfig": {
      		"root": true,
      		"extends": ["@samuelmeuli/eslint-config/react"]
      	}
      }
    • TypeScript:

      {
      	"eslintConfig": {
      		"root": true,
      		"extends": ["@samuelmeuli/eslint-config/typescript"]
      	}
      }
    • TypeScript with React:

      {
      	"eslintConfig": {
      		"root": true,
      		"extends": ["@samuelmeuli/eslint-config/typescript-react"]
      	}
      }
  3. 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 ."
      	}
      }

About

☑️ My ESLint configuration

License:MIT License


Languages

Language:JavaScript 100.0%