A opinionated ESLint config preset.
242
stars
638
commits
TypeScript
primary language
Sep 7, 2026
updated
A opinionated ESLint config preset for JavaScript, TypeScript, Vue, Astro, and Prettier.
package.json, tsconfig.json...dist, node_modules, coverage, and files in .gitignore.npm i -D @sxzz/eslint-config
Require Node.js >= 20.0.0, and ESLint >= 9.5.0.
| Feature | Optional Dependency |
|---|---|
| Astro | eslint-plugin-astro |
| UnoCSS | @unocss/eslint-plugin |
import { sxzz } from '@sxzz/eslint-config'
export default sxzz(
// Features: it'll detect installed dependency and enable necessary features automatically
{
prettier: true,
markdown: true,
vue: true, // auto detection
astro: false, // auto detection
unocss: false, // auto detection
},
[/* your custom config */],
).removeRules('foo/bar') // see more in https://github.com/antfu/eslint-flat-config-utils
// eslint.config.js
import {
presetJavaScript, // Ignore common files and include javascript support
presetJsonc, // Includes basic json(c) file support and sorting json keys
presetLangsExtensions, // Includes markdown, yaml + `presetJsonc` support
presetBasic, // Includes `presetJavaScript` and typescript support
// Includes
// - `presetBasic` (JS+TS) support
// - `presetLangsExtensions` (markdown, yaml, jsonc) support
// - Astro support (`eslint-plugin-astro` is required)
// - Vue support
// - UnoCSS support (`uno.config.ts` is required)
// - Prettier support
presetAll,
} from '@sxzz/eslint-config'
export default presetAll
See preset.ts for more details.
@antfu/eslint-configMost of the rules are the same, but there are some differences:
MIT License © 2021-PRESENT Kevin Deng
TypeScript
100.0%
A opinionated ESLint config preset.
242
stars
638
commits
TypeScript
primary language
Sep 7, 2026
updated
A opinionated ESLint config preset for JavaScript, TypeScript, Vue, Astro, and Prettier.
package.json, tsconfig.json...dist, node_modules, coverage, and files in .gitignore.npm i -D @sxzz/eslint-config
Require Node.js >= 20.0.0, and ESLint >= 9.5.0.
| Feature | Optional Dependency |
|---|---|
| Astro | eslint-plugin-astro |
| UnoCSS | @unocss/eslint-plugin |
import { sxzz } from '@sxzz/eslint-config'
export default sxzz(
// Features: it'll detect installed dependency and enable necessary features automatically
{
prettier: true,
markdown: true,
vue: true, // auto detection
astro: false, // auto detection
unocss: false, // auto detection
},
[/* your custom config */],
).removeRules('foo/bar') // see more in https://github.com/antfu/eslint-flat-config-utils
// eslint.config.js
import {
presetJavaScript, // Ignore common files and include javascript support
presetJsonc, // Includes basic json(c) file support and sorting json keys
presetLangsExtensions, // Includes markdown, yaml + `presetJsonc` support
presetBasic, // Includes `presetJavaScript` and typescript support
// Includes
// - `presetBasic` (JS+TS) support
// - `presetLangsExtensions` (markdown, yaml, jsonc) support
// - Astro support (`eslint-plugin-astro` is required)
// - Vue support
// - UnoCSS support (`uno.config.ts` is required)
// - Prettier support
presetAll,
} from '@sxzz/eslint-config'
export default presetAll
See preset.ts for more details.
@antfu/eslint-configMost of the rules are the same, but there are some differences:
MIT License © 2021-PRESENT Kevin Deng
TypeScript
100.0%