@vbetsch/config-eslint
v1.0.5
Published
My ESLint configuration files
Maintainers
Readme
@vbetsch/config-eslint
A modular and extensible ESLint configuration collection for TypeScript projects, designed to enforce high code quality standards while remaining flexible.
🧩 Modules
This package provides several configuration modules that can be composed to fit your project's needs:
| Module | Description |
|--------------------------------------------------------------------------------------------------------------------|------------------------------------------------------|
| base | Core TypeScript rules and best practices. |
| jsx | Specialized rules for React and JSX accessibility. |
| naming | Enforces strict and consistent naming conventions. |
| prettier | Disables conflicting rules and integrates Prettier. |
| spellcheck | Checks for common typos in identifiers and comments. |
| strict | Opinionated rules for maximum type safety and rigor. |
🏗️ Installation
We recommend using Node version lts/krypton -> v24.14.1.
Install the NPM package in your project:
npm install -D @vbetsch/config-eslintNote: Depending on the modules you use (e.g., jsx or prettier), you must also install the corresponding peer dependencies like eslint-plugin-react or prettier.
- base:
- No more dependencies needed
- jsx:
- tsconfig module jsx
- react
- eslint-plugin-react
- eslint-plugin-jsx-a11y
- naming:
- No more dependencies needed
- prettier:
- eslint-config-prettier
- eslint-plugin-prettier
- spellcheck:
- eslint-plugin-spellcheck
- strict:
- eslint-plugin-import
🚀 Getting started
To use these configurations, import them into your flat eslint.config.mjs file:
// NOTE: You can name imports like you want
import baseVbetsch from '@vbetsch/config-eslint/base';
import prettierVbetsch from '@vbetsch/config-eslint/prettier';
import strictVbetsch from '@vbetsch/config-eslint/strict';
export default [
...baseVbetsch,
...strictVbetsch,
...prettierVbetsch,
// IMPORTANT: You have to add these lines only for the strict module !
{
languageOptions: {
parserOptions: {
project: './tsconfig.json',
tsconfigRootDir: import.meta.dirname,
},
},
},
];
Check out the vbetsch/lib-config-ts-test repository for a live integration example.
🤝 Contributing
Please refer to the Root README for contribution guidelines.
