Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

eslint-config-gev

Package Overview
Dependencies
Maintainers
1
Versions
131
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-config-gev

Curated ESLint configs for TS, JS, Next, React, and React Native projects

  • 4.5.1
  • latest
  • npm
  • Socket score

Version published
Weekly downloads
8
decreased by-89.04%
Maintainers
1
Weekly downloads
 
Created
Source

npm npm

eslint-config-gev

Curated ESLint configs that I've been improving over the years. All my projects use this.

Since v4, this should be used together with Biome. Internally it uses my other package, the eslint-config-biome. If you want to stay without Biome, use v3 together with Prettier (I recommend prettier-config-gev)

💿 Install:

Automatically

Run npx eslint-config-gev <flavor>, being flavor one of the following: ts, next, react, react-native, js. This list and further options can be seen by running npx eslint-config-gev --help.

This command adds the required package to your package.json and sets up the .eslintrc.cjs.

Manually

npm i -D eslint-config-gev
  • Add the following to the top of your .eslintrc.js:
// This is a workaround for https://github.com/eslint/eslint/issues/3458
require('@rushstack/eslint-patch/modern-module-resolution');

With it, you won't need to install eslint and all the plugins we use!

Do one of the following

Typescript

  • Add 'eslint-config-gev' (or 'eslint-config-gev/ts') to the extends: [...] field in your eslintrc.

    .eslintrc.js example
    // https://github.com/SrBrahma/eslint-config-gev
    // This is a workaround for https://github.com/eslint/eslint/issues/3458
    require('@rushstack/eslint-patch/modern-module-resolution');
    
    module.exports = {
      root: true,
      env: {
        es2021: true,
        node: true,
      },
      extends: ['eslint-config-gev/js'],
      overrides: [
        {
          files: ['*.ts'],
          extends: ['eslint-config-gev/ts'],
          parser: '@typescript-eslint/parser',
          parserOptions: {
            tsconfigRootDir: __dirname,
            project: ['./tsconfig.json'],
            ecmaVersion: 12,
            sourceType: 'module',
          },
        },
      ],
      ignorePatterns: ['/lib/**/*', '/dist/**/*'],
      rules: {},
    };
    

Javascript

  • Add 'eslint-config-gev/js' to the extends: [...] field in your eslintrc.

    .eslintrc.js example
    // https://github.com/SrBrahma/eslint-config-gev
    // This is a workaround for https://github.com/eslint/eslint/issues/3458
    require('@rushstack/eslint-patch/modern-module-resolution');
    module.exports = {
      root: true,
      env: {
        es2021: true,
        node: true,
      },
      extends: ['eslint-config-gev/js'],
      ignorePatterns: [],
      rules: {},
    };
    

React

Typescript
  • Add 'eslint-config-gev/react' to the extends: [...] field in your eslintrc.

    .eslintrc.js example
    // https://github.com/SrBrahma/eslint-config-gev
    // This is a workaround for https://github.com/eslint/eslint/issues/3458
    require('@rushstack/eslint-patch/modern-module-resolution');
    
    module.exports = {
      root: true,
      env: {
        es2021: true,
        node: true,
      },
      extends: ['eslint-config-gev/react-js'],
      overrides: [
        {
          files: ['*.ts', '*.tsx'],
          extends: ['eslint-config-gev/react'],
          parser: '@typescript-eslint/parser',
          parserOptions: {
            tsconfigRootDir: __dirname,
            project: ['./tsconfig.json'],
            ecmaVersion: 12,
            sourceType: 'module',
            ecmaFeatures: {
              jsx: true,
            },
          },
        },
      ],
      ignorePatterns: ['/lib/**/*', '/dist/**/*'],
      rules: {},
    };
    
Javascript
  • Add 'eslint-config-gev/react-js' to the extends: [...] field in your eslintrc.

    .eslintrc.js example
    // https://github.com/SrBrahma/eslint-config-gev
    // This is a workaround for https://github.com/eslint/eslint/issues/3458
    require('@rushstack/eslint-patch/modern-module-resolution');
    
    module.exports = {
      root: true,
      env: {
        es2021: true,
        node: true,
      },
      extends: ['eslint-config-gev/react-js'],
      ignorePatterns: ['/lib/**/*', '/dist/**/*'],
      rules: {},
    };
    

React Native

Typescript
  • Add 'eslint-config-gev/react-native' to the extends: [...] field in your eslintrc.

    .eslintrc.js example
    // https://github.com/SrBrahma/eslint-config-gev
    // This is a workaround for https://github.com/eslint/eslint/issues/3458
    require('@rushstack/eslint-patch/modern-module-resolution');
    
    module.exports = {
      root: true,
      env: {
        es2021: true,
        node: true,
        'react-native/react-native': true, // *1
      },
      extends: ['eslint-config-gev/react-native-js'],
      overrides: [
        {
          files: ['*.ts', '*.tsx'],
          extends: ['eslint-config-gev/react-native'],
          parser: '@typescript-eslint/parser',
          parserOptions: {
            tsconfigRootDir: __dirname,
            project: ['./tsconfig.json'],
            ecmaVersion: 12,
            sourceType: 'module',
            ecmaFeatures: {
              // *1
              jsx: true,
            },
          },
        },
      ],
      rules: {},
    };
    
    // [*1]: https://github.com/Intellicode/eslint-plugin-react-native#configuration
    
Javascript
  • Add 'eslint-config-gev/react-native-js' to the extends: [...] field in your eslintrc.

    .eslintrc.js example
    // https://github.com/SrBrahma/eslint-config-gev
    // This is a workaround for https://github.com/eslint/eslint/issues/3458
    require('@rushstack/eslint-patch/modern-module-resolution');
    
    module.exports = {
      root: true,
      env: {
        es2021: true,
        node: true,
        'react-native/react-native': true, // *1
      },
      extends: ['eslint-config-gev/react-native-js'],
      rules: {},
    };
    
    // [*1]: https://github.com/Intellicode/eslint-plugin-react-native#configuration
    

📰 Changelog

Keywords

FAQs

Package last updated on 26 May 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc