Exciting release!Introducing "safe npm". Learn more
Socket
Log inDemoInstall

@sima-land/linters

Package Overview
Dependencies
13
Maintainers
2
Versions
14
Issues
File Explorer

Advanced tools

@sima-land/linters

Code style linter configuration presets

    3.0.0latest
    GitHub

Version published
Maintainers
2
Weekly downloads
867
increased by4.46%

Weekly downloads

Changelog

Source

3.0.0

Major
  • prettier: пакет обновлён, из конфига удалены deprecated-опции (#21)
  • stylelint: пакет обновлён до версии 15, удалены deprecated-опции (#22)
  • eslint/react: добавлен плагин react/jsx-runtime (#23)

Readme

Source

Frontend linters

Пакет с пресетами конфигураций линтеров.

Использование

Установка

# npm $ npm i -D @sima-land/linters eslint stylelint prettier postcss # или yarn yarn add -D @sima-land/linters eslint stylelint prettier postcss

Конфигурация

С помощью package.json
{ "prettier": "@sima-land/linters/prettier", "eslintConfig": { "extends": "./node_modules/@sima-land/linters/eslint/index.js" }, "stylelint": { "extends": "@sima-land/linters/stylelint" } }
С помощью отдельных конфигурационных файлов
ESLint

Создать в корне проекта файл .eslintrc.js со следующим содержимым:

module.exports = { extends: require.resolve('@sima-land/linters/eslint'), };

Правила разбиты по модулям:

  • ./linters/eslint/base - базовые правила JS
  • ./linters/eslint/react - правила React/JSX
  • ./linters/eslint/react-hooks - правила React-хуков
  • ./linters/eslint/jest - правила для Jest-тестов
  • ./linters/eslint/typescript - для ts/tsx файлов
  • ./linters/eslint - все правила вместе (без react-hooks, временно)
Stylelint

Создать в корне проекта файл stylelint.config.js со следующим содержимым:

module.exports = { extends: require.resolve('@sima-land/linters/stylelint'), };
Prettier

Создать в корне проекта файл .prettierrc.js со следующим содержимым:

module.exports = require('@sima-land/linters/prettier');

Настройка git-хуков

Удобно использовать husky в связке с lint-staged, для этого необходимо:

  1. Установить пакеты
npm i -D husky lint-staged
  1. Создать в корне проекта файл lint-staged.config.js со следующим содержимым:
module.exports = { '*.{js,jsx,ts,tsx}': ['prettier --write', 'eslint --fix --ext .js,.jsx,.ts,.tsx'], '*.{css,scss}': ['prettier --write', 'stylelint'], };
  1. Добавить pre-commit хук согласно документации husky: npx lint-staged

https://typicode.github.io/husky/#/?id=create-a-hook

Проблемы с ESLint

ESLint может бросать ошибку, говоря что не может найти плагины, требуемые в конфигурации.

В этом случае поможет пакет @rushstack/eslint-patch:

Конфигурация текстовых редакторов

Актуальная информация в официальных документациях:

FAQs

Last updated on 15 Mar 2023

Did you know?

Socket installs a Github app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.

Install Socket
Socket
support@socket.devSocket SOC 2 Logo

Product

  • Package Issues
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc