power-linter — пакет пресетов конфигураций для ESLint и Prettier, кастомных правил линтирования и скриптов.
npm install power-linterСодержит правила из плагинов:
"eslint-config-airbnb",
"eslint-config-prettier",
"eslint-plugin-import",
"eslint-plugin-jsx-a11y",
"eslint-plugin-power-esrules",
"eslint-plugin-react",
"eslint-plugin-react-hooks".
Содержит codemod-скрипты:
1. Для добавления data-аттрибута "data-testid" (add-data-testid.js).
2. Для преобразования классовых React-компонентов в функциональные (class-to-functional.js).
Статус: в разработке.
0. Установить EsLint и Prettier.
``bash`
$ npm i eslint
$ npm i prettier
1. Установите npm-пакет с помощью команды:
`bash`
$ npm install power-linter --save-dev
2. Добавьте экспорт конфигурации eslint
`js`
// .eslintrc.js
module.exports = require('power-linter/src/eslint/config');
3. Добавьте экспорт конфигурации Prettier
`js`
// .prettierrc.js
module.exports = require('power-linter/src/prettier/config');
4. Для портирования настроек vscode (если необходимо) в каталоге .vscode создайте файл settings.json и добавьте в него следующие настройки:
`json{
// settings.json
"eslint.enable": true,
"eslint.validate": [
"javascript",
"javascriptreact",
"typescript",
"typescriptreact"
],
"eslint.run": "onType",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"editor.formatOnSave": true,
"[javascript]": {
"editor.defaultFormatter": "dbaeumer.vscode-eslint",
"editor.formatOnSave": true
},
"[javascriptreact]": {
"editor.defaultFormatter": "dbaeumer.vscode-eslint",
"editor.formatOnSave": true
},
"[typescript]": {
"editor.defaultFormatter": "dbaeumer.vscode-eslint",
"editor.formatOnSave": true
},
"[typescriptreact]": {
"editor.defaultFormatter": "dbaeumer.vscode-eslint",
"editor.formatOnSave": true
},
"eslint.lintTask.enable": true,
"eslint.workingDirectories": [
{
"mode": "auto"
}
]
}`
---