{"_id":"@braviadev/eslint-plugin","name":"@braviadev/eslint-plugin","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@braviadev/eslint-plugin","version":"1.0.0","homepage":"https://github.com/braviadev/config/blob/main/packages/eslint-plugin/README.md","bugs":{"url":"https://github.com/braviadev/config/issues"},"repository":{"type":"git","url":"git+https://github.com/braviadev/config.git","directory":"packages/eslint-plugin"},"license":"MIT","author":{"name":"Nelson Lai","email":"me@nelsonlai.dev","url":"https://github.com/braviadev/"},"type":"module","exports":{"types":"./dist/index.d.mts","import":"./dist/index.mjs"},"dependencies":{"@typescript-eslint/utils":"^8.57.2","minimatch":"^10.2.4"},"devDependencies":{"@types/node":"^24.11.0","@typescript-eslint/rule-tester":"^8.57.2","eslint":"^10.1.0","tsdown":"^0.21.6","vitest":"^4.1.2","@braviadev/typescript-config":"1.2.1"},"peerDependencies":{"eslint":"^9.0.0 || ^10.0.0"},"peerDependenciesMeta":{"eslint":{"optional":true}},"publishConfig":{"access":"public"},"scripts":{"build":"tsdown","clean":"rm -rf .turbo dist","dev":"tsdown --watch","test":"vitest run","test:watch":"vitest","typecheck":"tsc --noEmit"},"_id":"@braviadev/eslint-plugin@1.0.0","description":"Custom ESLint rules for Nelson Lai projects.","_nodeVersion":"25.6.1","_npmVersion":"11.9.0","dist":{"integrity":"sha512-9V3BQzinwP+TH4WihMXqidZEgRIzIavy7D3LUBBzAmut2odS3ZAC4bPGxrcM33wPHdTpG1U7W9nW91OQYeEnvQ==","shasum":"370f96d3ca12c8e1debe9b990e2c114149296e24","tarball":"https://registry.npmjs.org/@braviadev/eslint-plugin/-/eslint-plugin-1.0.0.tgz","fileCount":7,"unpackedSize":41869,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEE8A6XWBkTQ5WISEBx9MBC6mWUiIbGg1uQ0kXuJZ0c2AiEA+f7IhahvSsWITaUTEqg2Ing8cRmx4W+to2/Pe3amKZg="}]},"_npmUser":{"name":"braviadprog","email":"braviadprogrammer@gmail.com"},"directories":{},"maintainers":[{"name":"braviadprog","email":"braviadprogrammer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eslint-plugin_1.0.0_1776555676260_0.7294022787971095"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-18T23:41:16.118Z","1.0.0":"2026-04-18T23:41:16.404Z","modified":"2026-04-18T23:41:16.717Z"},"maintainers":[{"name":"braviadprog","email":"braviadprogrammer@gmail.com"}],"description":"Custom ESLint rules for Nelson Lai projects.","homepage":"https://github.com/braviadev/config/blob/main/packages/eslint-plugin/README.md","repository":{"type":"git","url":"git+https://github.com/braviadev/config.git","directory":"packages/eslint-plugin"},"author":{"name":"Nelson Lai","email":"me@nelsonlai.dev","url":"https://github.com/braviadev/"},"bugs":{"url":"https://github.com/braviadev/config/issues"},"license":"MIT","readme":"# @nelsonlaidev/eslint-plugin\n\nCustom ESLint rules for Nelson Lai projects.\n\n## Installation\n\n```bash\nnpm i -D @nelsonlaidev/eslint-plugin\n```\n\n## Usage\n\n```js\nimport nelsonlaidevPlugin from '@nelsonlaidev/eslint-plugin'\n\nexport default [\n  {\n    plugins: {\n      '@nelsonlaidev': nelsonlaidevPlugin,\n    },\n    rules: {\n      '@nelsonlaidev/lucide-icon-suffix': 'error',\n    },\n  },\n]\n```\n\n## Rules\n\n| Rule                                                                   | Description                                                                      | Fixable |\n| ---------------------------------------------------------------------- | -------------------------------------------------------------------------------- | ------- |\n| [lucide-icon-suffix](docs/rules/lucide-icon-suffix.md)                 | Enforce using the `Icon` suffixed version of `lucide-react` imports              | Yes     |\n| [lucide-restrict-import](docs/rules/lucide-restrict-import.md)         | Restrict specific imports from `lucide-react` and suggest preferred alternatives | Yes     |\n| [shadcn-cn-wrap-variants](docs/rules/shadcn-cn-wrap-variants.md)       | Enforce wrapping `*Variants()` calls inside `cn()`                               | Yes     |\n| [shadcn-cva-variants-suffix](docs/rules/shadcn-cva-variants-suffix.md) | Enforce that variables assigned to `cva()` end with `Variants`                   | Yes     |\n| [shadcn-prefer-spinner](docs/rules/shadcn-prefer-spinner.md)           | Enforce using `<Spinner />` instead of loader icons from lucide-react            | No      |\n","readmeFilename":"README.md","_rev":"1-6159b1fc1faa9f65121718fb4fca656a"}