@saasjetlib/eslint-config-typescript
v2.1.1
Published
SaaSJet ESLint config for TypeScript
Downloads
729
Readme
SaaSJet ESLint config for TypeScript
This package provides a shared, extensible ESLint flat config for TypeScript projects (ESLint 9+).
Usage
- Install packages
npm
npm install --save-dev @saasjetlib/eslint-config-typescript eslint typescriptyarn
yarn add --dev @saasjetlib/eslint-config-typescript eslint typescriptYou only install the config plus the
eslintandtypescriptpeer dependencies. The parser (@typescript-eslint/parser) and plugins (@typescript-eslint/eslint-plugin,eslint-plugin-import-x) ship as dependencies of this package and are installed automatically.
- Create an ESLint configuration file
eslint.config.mjs
import typescriptConfig from '@saasjetlib/eslint-config-typescript';
export default [
...typescriptConfig,
];The config already wires up the @typescript-eslint/parser (as a parser object) and registers the
@typescript-eslint and import-x plugins, so it works as-is in flat config.
- Customizing
This is a flat config, so override anything by appending your own config object. The TypeScript block
sets languageOptions.parserOptions.project: './tsconfig.json' by default — point it at a different
tsconfig (or set tsconfigRootDir) like this:
import typescriptConfig from '@saasjetlib/eslint-config-typescript';
export default [
...typescriptConfig,
{
files: ['**/*.ts', '**/*.tsx'],
languageOptions: {
parserOptions: {
project: ['./tsconfig.eslint.json'],
tsconfigRootDir: import.meta.dirname,
},
},
},
];Note: this is flat config (ESLint 9+). The legacy eslintrc options
env.*andparserOptions.sourceTypeno longer apply — uselanguageOptions/languageOptions.globalsinstead.
