An experimental ESLint plugin v0.12.1 by Harlan Wilton for Vue/Nuxt projects, shipping 26+ rules across four categories: link hygiene (ASCII-only, lowercase, trailing slashes), Nuxt best practices (await navigateTo, prefer NuxtLink), Vue reactivity patterns (avoid nested reactivity, ref unwrapping), and AI deslop tools (clean AI-generated markdown slop). Requires eslint >=9.0.0 (flat config only), ships with TypeScript types, and is released irregularly with breaking changes (e.g., v0.12.0 dropped `mixed-conventions`). Differentiates from eslint-plugin-vue by targeting Nuxt-specific patterns and opinionated link rules not found elsewhere.
npm install eslint-plugin-harlanzwVerified import paths — ran on the pinned version, not inferred.
Flat ESLint config enabling link hygiene and Nuxt rules with plugin import and rule registration.
Remove any references to 'harlanzw/mixed-conventions' from your ESLint configuration; the rule no longer exists.
Switch to flat config format (eslint.config.js or eslint.config.mjs) with ESLint >=9.0.0.
Pin the plugin version and test rules thoroughly. Monitor release notes for rule changes.
Use with caution; consider if these rules are necessary before adopting.
Run 'npm install eslint-plugin-harlanzw --save-dev' or 'yarn add -D eslint-plugin-harlanzw'.
Use ESM import syntax: 'import pluginHarlanzw from 'eslint-plugin-harlanzw';'.
Remove 'harlanzw/mixed-conventions' from your rules object.
Wrap rules inside a config object with 'plugins' property as shown in the quickstart.