3.5.1 • Published 9 months ago

@hypernym/eslint-config v3.5.1

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

@hypernym/eslint-config

Hypernym's internal config for ESLint.

Repository | Package | Releases | Discussions

pnpm add -D @hypernym/eslint-config

Setup

Add lint commands for manual linting (optionally):

// package.json

{
  "scripts": {
    "lint": "eslint .",
    "lint:fix": "eslint --fix ."
  }
}

Usage

JS

// eslint.config.js

import { jsConfig, ignoresConfig } from '@hypernym/eslint-config'

export default [jsConfig, ignoresConfig]

TS

// eslint.config.js

import { jsConfig, tsConfig, ignoresConfig } from '@hypernym/eslint-config'

export default [jsConfig, tsConfig, ignoresConfig]

Svelte/SvelteKit

!NOTE

Install the required Svelte dev dependencies before using:

pnpm add -D eslint-plugin-svelte svelte-eslint-parser

Also, don't forget to add the svelte lang key to the eslint.validate vscode setting:

// .vscode/settings.json

{
  "eslint.validate": ["javascript", "typescript", "svelte"]
}
// eslint.config.js

import { jsConfig, tsConfig, ignoresConfig } from '@hypernym/eslint-config'
import { svelteConfig } from '@hypernym/eslint-config/svelte'

export default [jsConfig, tsConfig, svelteConfig, ignoresConfig]

Vue/Nuxt

!NOTE

Install the required Vue dev dependencies before using:

pnpm add -D eslint-plugin-vue

Also, don't forget to add the vue lang key to the eslint.validate vscode setting:

// .vscode/settings.json

{
  "eslint.validate": ["javascript", "typescript", "vue"]
}
// eslint.config.js

import { jsConfig, tsConfig, ignoresConfig } from '@hypernym/eslint-config'
import { vueConfig } from '@hypernym/eslint-config/vue'

export default [jsConfig, tsConfig, vueConfig, ignoresConfig]

React/Next

!NOTE

Install the required React dev dependencies before using:

pnpm add -D eslint-plugin-react eslint-plugin-react-hooks eslint-plugin-react-refresh

Also, don't forget to add the react lang keys to the eslint.validate vscode setting:

// .vscode/settings.json

{
  "eslint.validate": ["javascript", "typescript", "javascriptreact", "typescriptreact"]
}
// eslint.config.js

import { ignoresConfig } from '@hypernym/eslint-config'
import { jsxConfig, tsxConfig } from '@hypernym/eslint-config/react'

export default [jsxConfig, tsxConfig, ignoresConfig]

Custom

// eslint.config.js

import { jsConfig, tsConfig, ignores } from '@hypernym/eslint-config'

export default [
  jsConfig,
  tsConfig,
  {
    files: tsConfig.files,
    rules: {
      '@typescript-eslint/no-explicit-any': 'off',
      '@typescript-eslint/no-unused-vars': [
        'error',
        { ignoreRestSiblings: true },
      ],
    },
  },
  {
    ignores: [...ignores, '**/dir/**/*'],
  },
]

Community

Feel free to ask questions or share new ideas.

Use the official discussions to get involved.

License

Developed in 🇭🇷 Croatia, © Hypernym Studio.

Released under the MIT license.

3.5.1

9 months ago

3.4.0

10 months ago

3.3.1

10 months ago

3.3.0

10 months ago

3.2.0

11 months ago

3.1.0

11 months ago

3.3.3

10 months ago

3.5.0

10 months ago

3.3.2

10 months ago

3.0.2

1 year ago

3.0.1

1 year ago

3.0.0

1 year ago

2.0.5

1 year ago

2.0.4

1 year ago

2.0.3

2 years ago

2.0.2

2 years ago

2.0.1

2 years ago

2.0.0

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago