eslint-config-generator
Generate ESLint configuration files (.eslintrc.js, eslint.config.js) for JavaScript/TypeScript projects with framework-specific rules. Triggers on "create ESLint config", "generate eslint configuration", "eslint setup for", "linting rules for".
When & Why to Use This Skill
This Claude skill automates the creation of production-ready ESLint configuration files for JavaScript and TypeScript projects. It eliminates the manual effort of setting up linting environments by generating optimized configurations for various frameworks, supporting both legacy formats and the modern ESLint 9.x flat config system to ensure code consistency and quality.
Use Cases
- Rapidly initializing a new React, Vue, or Node.js project with industry-standard linting rules and TypeScript support.
- Migrating existing projects from legacy .eslintrc formats to the modern ESLint 9.x flat configuration (eslint.config.js).
- Configuring complex linting rules and plugins for TypeScript projects without manually searching through documentation for syntax and dependencies.
| name | eslint-config-generator |
|---|---|
| description | Generate ESLint configuration files (.eslintrc.js, eslint.config.js) for JavaScript/TypeScript projects with framework-specific rules. Triggers on "create ESLint config", "generate eslint configuration", "eslint setup for", "linting rules for". |
ESLint Config Generator
Generate production-ready ESLint configuration files with appropriate rules, plugins, and extends for various JavaScript/TypeScript projects.
Output Requirements
File Output: .eslintrc.js, .eslintrc.json, or eslint.config.js
Format: Valid ESLint configuration
Standards: ESLint 8.x / 9.x (flat config)
When Invoked
Immediately generate a complete ESLint configuration file with appropriate plugins, extends, and rules for the specified project type.
Configuration Templates
Modern Flat Config (ESLint 9.x)
// eslint.config.js
import js from '@eslint/js';
import typescript from '@typescript-eslint/eslint-plugin';
import typescriptParser from '@typescript-eslint/parser';
export default [
js.configs.recommended,
{
files: ['**/*.{ts,tsx}'],
languageOptions: {
parser: typescriptParser,
parserOptions: {
ecmaVersion: 'latest',
sourceType: 'module',
project: './tsconfig.json',
},
},
plugins: {
'@typescript-eslint': typescript,
},
rules: {
'@typescript-eslint/no-unused-vars': 'error',
'@typescript-eslint/no-explicit-any': 'warn',
},
},
];
Legacy Config
// .eslintrc.js
module.exports = {
root: true,
env: { node: true, es2022: true },
parser: '@typescript-eslint/parser',
plugins: ['@typescript-eslint'],
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
],
};
Example Invocations
Prompt: "Create ESLint config for React TypeScript"
Output: Complete .eslintrc.js with React, TypeScript, and hooks rules.