es-tooling / ecosystem-cleanup

A place to keep track of ongoing efforts to clean up the JS ecosystem
386 stars 2 forks source link

Migrate `eslint-config-next` to `eslint-plugin-import-x` and `eslint-react` #123

Open mcmxcdev opened 1 month ago

mcmxcdev commented 1 month ago

I just saw that eslint-config-next pulls in eslint-plugin-import, eslint-plugin-jsx-a11y and eslint-plugin-react. These dependencies are known to be full of bloat dependencies, polyfills and support for ancient node versions.

See: https://github.com/vercel/next.js/blob/b68c188450f1d4ed932e9e28e9be2b5562bfe306/packages/eslint-config-next/package.json#L19-L21

Although probably not a 100% replacement in terms of rulesets, I would suggest moving from:

43081j commented 1 month ago

Good find 👍

Id love to see a jsx-a11y alternative too. As far as I know, nobody has built one yet

mcmxcdev commented 1 month ago

Biome does have accessibility rules ported over from eslint-plugin-jsx-a11y, see https://biomejs.dev/linter/rules/#accessibility but projects would need to be open to embrace another tool rather than just another eslint plugin.

43081j commented 1 month ago

Yup I think we still need to provide a solution for eslint users

We can recommend both but they will be a preference for many years to come. So we need to make sure we satisfy both sides