# Vue
- [ESLint](#eslint)
- [Oxlint](#oxlint)
## ESLint
To use ESLint with Vue files, first install the [vue-eslint-parser](https://github.com/vuejs/vue-eslint-parser).
```sh
npm i -D vue-eslint-parser
```
To lint Tailwind CSS classes in Vue files, ensure that:
- The `vue-eslint-parser` is installed and configured.
- The plugin is added to your configuration.
- The `settings` object contains the correct Tailwind CSS configuration paths.
### Flat config
Read more about the [ESLint flat config format](https://eslint.org/docs/latest/use/configure/configuration-files-new)
```js
// eslint.config.js
import eslintPluginBetterTailwindcss from "eslint-plugin-better-tailwindcss";
import { defineConfig } from "eslint/config";
import eslintParserVue from "vue-eslint-parser";
export default defineConfig({
// enable all recommended rules
extends: [
eslintPluginBetterTailwindcss.configs.recommended
],
// if needed, override rules to configure them individually
// rules: {
// "better-tailwindcss/enforce-consistent-line-wrapping": ["warn", { printWidth: 100 }]
// },
settings: {
"better-tailwindcss": {
// tailwindcss 4: the path to the entry file of the css based tailwind config (eg: `src/global.css`)
entryPoint: "src/global.css",
// tailwindcss 3: the path to the tailwind config file (eg: `tailwind.config.js`)
tailwindConfig: "tailwind.config.js"
}
},
files: ["**/*.vue"],
languageOptions: {
parser: eslintParserVue
}
});
```
Legacy config
```jsonc
// .eslintrc.json
{
// enable all recommended rules
"extends": [
"plugin:better-tailwindcss/legacy-recommended"
],
// if needed, override rules to configure them individually
// "rules": {
// "better-tailwindcss/enforce-consistent-line-wrapping": ["warn", { "printWidth": 100 }]
// },
"settings": {
"better-tailwindcss": {
// tailwindcss 4: the path to the entry file of the css based tailwind config (eg: `src/global.css`)
"entryPoint": "src/global.css",
// tailwindcss 3: the path to the tailwind config file (eg: `tailwind.config.js`)
"tailwindConfig": "tailwind.config.js"
}
},
"parser": "vue-eslint-parser"
}
```
## Oxlint
Oxlint currently does **not** support Vue files (`.vue`).
Framework-specific parsers like Vue are not supported in Oxlint yet, so `eslint-plugin-better-tailwindcss` cannot currently lint Vue templates through Oxlint.
You can continue using ESLint for Vue files until Oxlint adds framework parser support.