@fdhl/eslint-config v1.0.0
@technowizard/eslint-config
An opinionated ESLint config for TypeScript projects. Requires ESLint v9+
Installation
Install the package
npm install @fdhl/eslint-configIn your eslint.config.js:
import fdhl from '@fdhl/eslint-config';
export default fdhl;Principles
This configuration is well-suited for modern React/TypeScript projects, focusing on code quality, maintainability, and developer experience
Modern JavaScript/TypeScript Support: Uses ECMAScript 2024 features, supports both JavaScript and TypeScript
Code Quality: Enforces strict mode patterns, prevents common errors, disallows console statements in production code
React-Specific Rules: Uses React 19, enforces React Hooks rules, enables React Compiler, disables prop-types
Code Style:
Enforces consistent code style with Prettier, uses perfectionist for sorting (enums, interfaces, JSX props, etc.), prefers arrow functions, enforces const over let/var
Import Management: Handles imports with eslint-plugin-import-x, prevents unused imports, validates import sources and dependencies
Security & Best Practices&: Prevents test-only code in production (no-only-tests), uses modern JavaScript features (e.g., optional chaining, nullish coalescing), enforces error handling patterns, prevents common security issues
Development Experience: Shows warnings for TODO/FIXME comments, provides clear error messages, integrates with TypeScript type checking
Included Plugins & Rules
This configuration includes the following eslint plugins:
typescript-eslinteslint-import-resolver-typescripteslint-plugin-import-xeslint-plugin-reacteslint-plugin-react-hookseslint-plugin-unicorneslint-plugin-perfectionisteslint-plugin-no-only-tests
Recommendations
This configuration is best used with:
- TypeScript and the
noUnusedLocalssetting. - Prettier and the
@ianvs/prettier-plugin-sort-imports.
6 months ago