ESLint Config

Nuxt Integration

Use @pleaseai/eslint-config together with @nuxt/eslint in a Nuxt project.

Nuxt Integration

@nuxt/eslint is the official ESLint module for Nuxt. It generates a project-aware flat config at ./.nuxt/eslint.config.mjs that knows about your auto-imports, components directory, and pages, so ESLint can correctly resolve Nuxt globals without manual rules.

@pleaseai/eslint-config composes cleanly with @nuxt/eslint — the module supplies the Nuxt-specific rules, and @pleaseai/eslint-config provides the rest.

Quick Setup

Add the module with Nuxi — it installs @nuxt/eslint and wires it into nuxt.config.ts automatically:

Terminal
npx nuxi@latest module add eslint

This gives you a default setup that pulls in ESLint's JS, TS, and Vue plugins on top of the Nuxt-aware rules.

Custom Config Presets

By default the module installs the JS, TS, and Vue plugins with their recommended rules. Since @pleaseai/eslint-config (via @antfu/eslint-config) already covers those, disable the default preset by setting standalone: false so the module only emits Nuxt-specific rules:

nuxt.config.ts
export default defineNuxtConfig({
  modules: [
    '@nuxt/eslint',
  ],
  eslint: {
    config: {
      standalone: false,
    },
  },
})

Then create eslint.config.mjs that wraps @pleaseai/eslint-config with the withNuxt helper generated by the module:

eslint.config.mjs
// @ts-check
import pleaseai from '@pleaseai/eslint-config'
import withNuxt from './.nuxt/eslint.config.mjs'

export default withNuxt(
  pleaseai({
    // ...@pleaseai/eslint-config options
    vue: true,
  }),
  // ...your other flat config items
)

withNuxt merges its arguments after the Nuxt-aware rules, so anything you pass (including the @pleaseai/eslint-config output) takes precedence over the defaults provided by @nuxt/eslint.

Why standalone: false?

Without it, @nuxt/eslint and @pleaseai/eslint-config both install the JS/TS/Vue plugins, producing duplicate-rule warnings and doubling the resolved config size. Setting standalone: false scopes the module down to the parts that only Nuxt knows about (auto-imports, component directory globals, page structure) and lets @pleaseai/eslint-config own the language tooling.

Running ESLint

The standard lint / lint:fix scripts documented on the main ESLint Config page work unchanged once @nuxt/eslint is wired up.

See the @nuxt/eslint module docs for additional options like custom rule overrides, per-directory configs, and dev-mode integration.
Copyright © 2026