nuqs icon indicating copy to clipboard operation
nuqs copied to clipboard

chore: Setup eslint for packages/nuqs

Open tylersayshi opened this issue 8 months ago • 1 comments

Sharing the lint setup I created when debugging #566 in case linting is desired going forward.

This is mostly the default setup from npm init @eslint/config@latest with eslint 8, react, and ts. I added eslint-plugin-react-hooks & eslint-plugin-react-compiler.

I disabled the following rules because they throw errors in the current codebase that I didn't find particularly useful here:

rules: {
  '@typescript-eslint/no-explicit-any': 'off',
  '@typescript-eslint/ban-ts-comment': 'off',
  'no-useless-escape': 'off'
}

I also disabled eslint entirely in the *.test-d.ts files because those threw many errors with the rules of hooks and if the current usage of those files works fine for testing, I don't see any reason to lint there (at least for the rules of hooks).

Lastly, there are just a few warnings related to dependency arrays of the current hook usages:

image

These can be fixed very easily, but I will wait for feedback on how y'all would like to fix them (or not fix them) before making further changes.

tylersayshi avatar Jun 27 '24 19:06 tylersayshi