---
title: FAQ
description: Frequently asked questions about ESLint integration in Nuxt
---

This project is composed of multiple packages for different level of ESLint integration.

### What to use?

For new projects, we highly recommend using the [ESLint Module](/packages/module) which provides a project-aware ESLint flat config generation and is more future-proof.

If you still use the legacy `.eslintrc` format, you can use the [ESLint Config](/packages/config) package to manually configure your ESLint settings. We recommend you to migrate to the flat config format if possible.

If you are maintaining your custom ESLint config and want a low-level setup, you can use the [ESLint Plugin](/packages/plugin) package directly to enable some Nuxt-specific rules in your config.

### Package Disambiguation

Due to the historical reasons, we have quite a few packages for different ESLint integrations.

Here's a table to help you understand the differences:

<div class="packages-disambiguation-table">

| Package | Tags |
| --- | --- |
| [`@nuxt/eslint`](/packages/module) <br> All-in-one ESLint module for Nuxt | [`flat-config`]{.badge-flat} [`recommended`]{.badge-recommend} |
| [`@nuxt/eslint-config`](/packages/config) <br> Shared config for Nuxt, for both flat config and legacy config. <br>Unopinionated but customizable. | [`flat-config`]{.badge-flat} [`legacy-config`]{.badge-legacy} |
| [`@nuxt/eslint-plugin`](/packages/plugin) <br> Low-level ESLint plugin for Nuxt. | |

</div>
