ESLint shared configurations for TypeScript, React, and Angular projects, using ESLint’s new flat config format.
Eslint-config-avisto gives 3 eslint shared config :
- Base config with typescript rules
- React config inherited based config and adding react eslint rules
- Angular config inherited based config and adding angular eslint rules
This configuration is using eslint flat configuration file
- ESLint v9 or higher (Flat Config)
- Node.js 18+
Check migration guide to migrate to flat configuration system
Default export contains all non-framework related Eslint rules. It requires eslint, typescript-eslint, eslint-config-prettier, @eslint/js.
- Install all dependencies
Using npm
npx install-peerdeps --dev eslint-config-avistoUsing pnpm
pnpm dlx install-peerdeps --dev eslint-config-avisto --pnpm- In your
eslint.config.jsfile add :
import { defineConfig } from "eslint/config";
import base from "eslint-config-avisto";
export default defineConfig([...base]);Default export contains all base configuration rules & react specific rules. It requires eslint, typescript-eslint, eslint-config-prettier, @eslint/js, eslint-plugin-react, eslint-config-avisto.
- Install all dependencies
Using npm
npm install --save-dev eslint eslint-config-avisto typescript-eslint eslint-config-prettier @eslint/js eslint-plugin-reactUsing pnpm
pnpm install --save-dev eslint eslint-config-avisto typescript-eslint eslint-config-prettier @eslint/js eslint-plugin-react- In your
eslint.config.jsfile add :
import { defineConfig } from "eslint/config";
import react from "eslint-config-avisto/react";
export default defineConfig([...react]);Default export contains all base configuration rules & angular specific rules. It requires eslint, typescript-eslint, eslint-config-prettier, @eslint/js, angular-eslint, eslint-config-avisto.
- Install all dependencies
Using npm
npm install --save-dev eslint eslint-config-avisto typescript-eslint eslint-config-prettier @eslint/js angular-eslintUsing pnpm
pnpm install --save-dev eslint eslint-config-avisto typescript-eslint eslint-config-prettier @eslint/js angular-eslint- In your
eslint.config.jsfile add :
import { defineConfig } from "eslint/config";
import angular from "eslint-config-avisto/angular";
export default defineConfig([...angular]);It's possible to modify pre-defined rules and add new rules as needed. See example below :
import { defineConfig } from "eslint/config";
import react from "eslint-config-avisto/react";
export default defineConfig([
...react,
{
files: ["*.ts", "*.tsx"],
rules: {
"no-debugger": "error", // define as warn in react config
"@typescript-eslint/consistent-type-exports": "error", // add new rules
},
},
]);Contributions, issues, and feature requests are welcome! Feel free to open an issue or submit a PR. If you report any sensitive issue or have any questions that need reactivity please ask to community@avisto.com
Apache 2.0
