Hypernym's internal config for ESLint.
Repository ✦ Package ✦ Releases ✦ Discussions
pnpm add -D @hypernym/eslint-config
Add lint
commands for manual linting (optional):
// package.json
{
"scripts": {
"lint": "eslint .",
"lint:fix": "eslint --fix ."
}
}
// eslint.config.mjs
import { defineConfig, jsConfig, ignoresConfig } from '@hypernym/eslint-config'
export default defineConfig([jsConfig, ignoresConfig])
// eslint.config.mjs
import {
defineConfig,
jsConfig,
tsConfig,
ignoresConfig,
} from '@hypernym/eslint-config'
export default defineConfig([jsConfig, tsConfig, ignoresConfig])
[!NOTE]
Install the required
Svelte
dependencies before using:pnpm add -D eslint-plugin-svelte svelte-eslint-parserAlso, don't forget to add the
svelte
lang key to theeslint.validate
vscode setting:// .vscode/settings.json { "eslint.validate": ["javascript", "typescript", "svelte"] }
// eslint.config.mjs
import {
defineConfig,
jsConfig,
tsConfig,
ignoresConfig,
} from '@hypernym/eslint-config'
import { svelteConfig } from '@hypernym/eslint-config/svelte'
export default defineConfig([jsConfig, tsConfig, svelteConfig, ignoresConfig])
[!NOTE]
Install the required
Vue
dependencies before using:pnpm add -D eslint-plugin-vue vue-eslint-parserAlso, don't forget to add the
vue
lang key to theeslint.validate
vscode setting:// .vscode/settings.json { "eslint.validate": ["javascript", "typescript", "vue"] }
// eslint.config.mjs
import {
defineConfig,
jsConfig,
tsConfig,
ignoresConfig,
} from '@hypernym/eslint-config'
import { vueConfig } from '@hypernym/eslint-config/vue'
export default defineConfig([jsConfig, tsConfig, vueConfig, ignoresConfig])
[!NOTE]
Install the required
React
dependencies before using:pnpm add -D eslint-plugin-react eslint-plugin-react-hooks eslint-plugin-react-refreshAlso, don't forget to add the
react
lang keys to theeslint.validate
vscode setting:// .vscode/settings.json { "eslint.validate": ["javascript", "typescript", "javascriptreact", "typescriptreact"] }
// eslint.config.mjs
import { defineConfig, ignoresConfig } from '@hypernym/eslint-config'
import { jsxConfig, tsxConfig } from '@hypernym/eslint-config/react'
export default defineConfig([jsxConfig, tsxConfig, ignoresConfig])
// eslint.config.mjs
import {
defineConfig,
globalIgnores,
jsConfig,
tsConfig,
ignores,
} from '@hypernym/eslint-config'
export default defineConfig([
jsConfig,
tsConfig,
{
files: tsConfig.files,
rules: {
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/no-unused-vars': [
'error',
{ ignoreRestSiblings: true },
],
},
},
globalIgnores([...ignores, '**/dir/']),
])
For more info on how to ignore files
, see the official docs.
Feel free to ask questions or share new ideas.
Use the official discussions to get involved.
Developed in 🇭🇷 Croatia, © Hypernym Studio.
Released under the MIT license.