Skip to content

@eslint-sets/eslint-configModern ESLint Flat Config

Modern ESLint config with flat config support for Vue, React, Svelte, TypeScript, Next.js, Nuxt, Astro, Angular, UnoCSS and more

@eslint-sets/eslint-config

Quick Start

bash
# use pnpm
pnpm dlx @eslint-sets/eslint-config

# use npm
npx @eslint-sets/eslint-config

# use bun
bunx @eslint-sets/eslint-config

Manual Setup

bash
# Install
pnpm install -D @eslint-sets/eslint-config eslint

# Create config file
typescript
// eslint.config.ts
import eslintConfig from '@eslint-sets/eslint-config'

export default eslintConfig()

Supported Frameworks

FrameworkAuto-detectNotes
TypeScriptDefault enabled
VueVue 2 & 3 support, with a11y option
ReactWith hooks, refresh, and React Compiler support
SvelteSvelte 5 runes support
SolidSolidJS support
Next.jsRequires @next/eslint-plugin-next
NuxtNuxt 3 support
AstroRequires eslint-plugin-astro
AngularRequires @angular-eslint/eslint-plugin
UnoCSSRequires @unocss/eslint-plugin

Why @eslint-sets/eslint-config?

  • Modern Architecture: Built for ESLint v9 flat config with ESM-only design
  • Zero Configuration: Works out of the box with sensible defaults
  • Framework Detection: Automatically enables rules based on your dependencies
  • Flexible: Override any defaults or disable features you don't need
  • Well Typed: Full TypeScript support with auto-generated rule types
  • Active Development: Regular updates and new feature additions

Requirements

  • Node.js: ^18.18.0 or ^20.9.0 or >=21.1.0
  • ESLint: ^9.10.0 or ^9.22.0
  • Config file: Must use ESM format (eslint.config.ts or eslint.config.mjs)

Released under the MIT License.