eslint-config-zoro
v9.1.3
Published
A fully customized ESLint configuration based on the default ESLint, React and TypeScript rules.
Maintainers
Readme
Installation
npm i -D eslint eslint-config-zoroUsage
Use defineConfig to generate ESLint configuration in your eslint.config.mjs file:
// eslint.config.mjs
import { defineConfig } from "eslint-config-zoro";
export default defineConfig();Core Presets
The following presets are always enabled and cannot be opted out:
| Preset | Description | | ------------------------------------------------ | ------------- | | ESLint | ESLint rules | | Stylistic | Style rules | | Perfectionist | Sorting rules |
Optional Presets
Enable optional presets by passing options to defineConfig, see Examples:
| Option | Preset | Required Dependencies |
| ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- |
| typescript | TypeScript | @typescript-eslint/parser @typescript-eslint/eslint-plugin |
| react | React + React Hooks | eslint-plugin-react eslint-plugin-react-hooks |
| node | Node | eslint-plugin-n |
Examples
TypeScript Project
npm i -D @typescript-eslint/parser @typescript-eslint/eslint-plugin// eslint.config.mjs
import { defineConfig } from "eslint-config-zoro";
export default defineConfig({
typescript: true
});React + TypeScript Project
npm i -D @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-plugin-react eslint-plugin-react-hooks// eslint.config.mjs
import { defineConfig } from "eslint-config-zoro";
export default defineConfig({
typescript: true,
react: true
});Node.js Project
npm i -D eslint-plugin-n// eslint.config.mjs
import { defineConfig } from "eslint-config-zoro";
export default defineConfig({
node: true
});Custom Rules and Ignores
// eslint.config.mjs
import { defineConfig } from "eslint-config-zoro";
export default defineConfig({
typescript: true,
ignores: ["dist/**"],
rules: {
"@stylistic/indent": ["error", 2]
}
});