@1inch/eslint-config
v5.0.0
Published
Common eslint config for all node.js repositories
Downloads
446
Keywords
Readme
eslint-config
Common eslint config for all node.js repositories
Install
Install packages
pnpm install --save-dev @1inch/eslint-config@latestAlso it is required to install peer dependencies
And then add file eslint.config.mjs:
import oneInchEslintConfig from "@1inch/eslint-config";
export default oneInchEslintConfigRemove .eslintrc.js / .eslintrc.json and .eslintignore — ESLint 9 flat config replaces them.
Use eslint.config.mjs for ignores and custom rules:
import oneInchEslintConfig from "@1inch/eslint-config";
export default [
...oneInchEslintConfig,
{
ignores: [
"**/*.mock.ts",
"**/node_modules",
"**/.github",
"**/.idea",
"**/dist",
"**/*.json",
"**/*.yml",
"**/*.html",
"**/migrations",
],
},
{
settings: {
"import-x/resolver": {
typescript: {}
}
},
rules: {
// your custom rules here
}
}
];Add prettier file .prettierrc.js:
module.exports = {
singleQuote: true,
trailingComma: 'none',
tabWidth: 4,
printWidth: 120,
bracketSpacing: false,
semi: false
}Migration from v3
Breaking changes
ESLint flat config only — delete
.eslintrc.js/.eslintrc.jsonand.eslintignore, createeslint.config.mjsinsteadeslint-plugin-importreplaced byeslint-plugin-import-x— allimport/rule prefixes and settings changed toimport-x/:
| Before (v3) | After (v4) |
|---|---|
| plugins: ['import'] | not needed (included in config) |
| settings: { 'import/resolver': { typescript: {} } } | settings: { 'import-x/resolver': { typescript: {} } } |
| rules: { 'import/order': ... } | rules: { 'import-x/order': ... } |
- Removed packages — uninstall these, they are no longer needed:
pnpm remove \
@typescript-eslint/eslint-plugin \
@typescript-eslint/parser \
eslint-plugin-import \
eslint-config-standard \
eslint-plugin-n \
eslint-plugin-promise \
@eslint/compat \
@eslint/eslintrc- New packages — install these instead:
pnpm install --save-dev \
eslint@10 \
@eslint/js@10 \
typescript-eslint@8 \
eslint-plugin-import-x@4 \
eslint-import-resolver-typescript@4 \
eslint-config-prettier@10 \
eslint-plugin-unused-imports@4 \
@stylistic/eslint-plugin@5 \
globals@17Example migration
Before (.eslintrc.js):
module.exports = {
extends: ['@1inch'],
plugins: ['import'],
settings: {
'import/resolver': {
typescript: {}
}
},
rules: {
}
}After (eslint.config.mjs):
import oneInchEslintConfig from "@1inch/eslint-config";
export default [
...oneInchEslintConfig,
{
settings: {
"import-x/resolver": {
typescript: {}
}
},
rules: {
}
}
];