eslint-config-ai v3.6.5
eslint-config-ai
Opinionated set of ESLint shareable configs by Alex Ilyaev
Why?
I manage many projects and find myself copy/pasting configs between projects, which got out of hand pretty quickly.
What's included?
ai- eslint:recommended
- Common base rules
ai/typescriptai/unicornai/importai/jestai/lodashai/promiseai/react- eslint-plugin-react
- Setting
react/recommendedandreact/jsx-runtime
- Setting
- eslint-plugin-react-hooks
- eslint-plugin-jsx-a11y
- eslint-plugin-compat
- eslint-plugin-react
ai/jsdocai/eslint-commentsai/last- @stylistic/disable-legacy
- Disables styling rules that were deprecated and moved to
@stylistic
- Disables styling rules that were deprecated and moved to
- prettier
- Disables styling rules that are covered by Prettier
- @stylistic/disable-legacy
Installation
Required:
pnpm add -D \
prettier \
eslint \
eslint-config-prettier \
@stylistic/eslint-plugin \
@typescript-eslint/eslint-plugin \
@typescript-eslint/parser \
eslint-config-aiOptional (based on the configs you choose)
ai/react:
pnpm add -D \
eslint-plugin-compat \
eslint-plugin-jsx-a11y \
eslint-plugin-react \
eslint-plugin-react-hooksai/import:
pnpm add -D \
eslint-plugin-import \
eslint-import-resolver-typescriptOther:
pnpm add -D \
eslint-plugin-jest \
eslint-plugin-lodash \
eslint-plugin-promise \
eslint-plugin-jsdoc \
eslint-plugin-eslint-comments \
eslint-plugin-unicorn- If you use npm, replace
pnpm addwithnpm install
Usage
Add to your .eslintrc:
Last
Disables styling rules that are covered by Prettier or deprecated and moved to
@stylistic
Always add
ai/lastas the lastextends
{
"extends": ["ai/last"]
}Base rules
This config extends eslint:recommended and sets up Prettier
{
"extends": ["ai", "ai/last"]
}Base + Plugins
You can choose which plugins to add
{
"extends": [
"ai",
"ai/typescript",
"ai/unicorn",
"ai/import",
"ai/jest",
"ai/lodash",
"ai/promise",
"ai/jsdoc",
"ai/eslint-comments",
"ai/last"
]
}Base + TypeScript + React
{
"extends": ["ai", "ai/typescript", "ai/react", "ai/last"]
}All (Base + All Plugins + Last)
{
"extends": ["ai/all"]
}Configured Rules
You can see what's currently configured in these files:
11 months ago
11 months ago
12 months ago
12 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago