This is a plugin that puts the ESLint rules I have wanted into one place. It also contains rules for existing plug-ins with additional auto-fixer.
Use npm or a compatibility tool to install.
$ npm install --save-dev eslint @typehut/eslint-plugin
- Node.js v8.10.0 or newer versions.
- ESLint v5.16.0 or newer versions.
Write your config file such as .eslintrc.yml
.
plugins:
- "@typehut"
rules:
"@typehut/func-style":
- error
- arrow
- topLevelStyle: declaration
See also Configuring ESLint.
@typehut/recommended
... enables the recommended rules.
Rule ID | Description | |
---|---|---|
@typehut/exports-last | This rule enforces that all exports are declared at the bottom of the file. This rule will report any export declarations that comes before any non-export statements. | ⭐️✒️ |
@typehut/group-exports | Reports when named exports are not grouped together in a single export declaration or when multiple assignments to CommonJS module.exports or exports object are present in a single file | ⭐️✒️ |
@typehut/jsx-a11y-anchor-has-content | Enforce that anchors have content and that the content is accessible to screen readers | |
@typehut/jsx-a11y-control-has-associated-label | Enforce that a control (an interactive element) has a text label | |
@typehut/typescript-react-component-type | enforce FC and FunctionComponent types to one or the other |
⭐️✒️ |
@typehut/typescript-react-require-props-suffix | require that prop interface names be suffixed with Props |
⭐️ |
@typehut/typescript-react-require-props-type | require an props type to be provided to a React component | ⭐️ |
Rule ID | Description | |
---|---|---|
@typehut/func-style | enforce consistent use of function declarations or expressions |
⭐️✒️ |
This plugin follows Semantic Versioning and ESLint's Semantic Versioning Policy.
Welcome your contribution!
See also ESLint Contribution Guide.
npm test
runs tests and measures coverage.npm version <TYPE>
updates the package version. And it updateslib/configs/recommended.js
,lib/index.js
, andREADME.md
's rule table. See also npm version CLI command.npm run add-rule <RULE_ID>
creates three files to add a new rule.