Custom eslint
configuration built on top of eslint-kit presets.
Adds eslint plugins like @nx
, prefer-arrow
and more.
The config will be expanded in the future.
Eslint-kit is a library that provides ready-made eslint presets and it belongs to Evgeny Zakharov.
yarn add @grnx-utils/eslint eslint@^8.46.0 prettier@^3.0.0 typescript@^5.2.2 eslint-kit@10.0.0 -D
After installing, add the .eslintrc.js
file in your project root:
module.exports = require('@grnx-utils/eslint')()
grnx({
/** project root
* @type {string}
* @example __dirname
*/
root: __dirname,
/** enables monorepo mode
* @default false
*/
monorepo: true,
/** eslint ignore patterns
* @default ['**//*'] (in monorepo mode)
*/
ignore: ['**/*'],
/** tsconfig path
* @example tsconfig.base.json
* @default tsconfig.json
*/
tsconfig: 'tsconfig.json',
/** extensions provided by eslint-kit
* in the default configuration there
* are only 5 presets
* @default []
*/
extensions: ['vue', 'solidJs'],
/**
* enables eslint-kit allowDebug
* @default false
*/
allowDebug: true,
/** enables presets.imports() - unstable preset,
* errors are possible.
* @default true
*/
enableImports: false,
/** additional eslint rules
* @default {}
*/
ext: {
'react-hooks/exhaustive-deps': 'warn'
}
})
Will be expanded in the future.
Warning The package does not support the new
eslint.config.js
file provided by the latest versions of eslint. Possible configuration errors
The package may not work with node 21 and higher.