- Install eslint, typescript-eslint, eslint-plugin-react-hooks - Configure eslint.config.js with flat config format - Add type: module to package.json - Fix unused variable issues (prefix with underscore) - Add Makefile targets: lint-frontend, fix-frontend
31 lines
746 B
JavaScript
31 lines
746 B
JavaScript
import eslint from '@eslint/js';
|
|
import tseslint from 'typescript-eslint';
|
|
import reactHooks from 'eslint-plugin-react-hooks';
|
|
|
|
export default tseslint.config(
|
|
eslint.configs.recommended,
|
|
...tseslint.configs.recommended,
|
|
{
|
|
plugins: {
|
|
'react-hooks': reactHooks,
|
|
},
|
|
rules: {
|
|
...reactHooks.configs.recommended.rules,
|
|
'@typescript-eslint/no-unused-vars': [
|
|
'error',
|
|
{ argsIgnorePattern: '^_', varsIgnorePattern: '^_' },
|
|
],
|
|
// Downgrade to warnings - existing patterns use these
|
|
'react-hooks/exhaustive-deps': 'warn',
|
|
'react-hooks/set-state-in-effect': 'off',
|
|
},
|
|
},
|
|
{
|
|
ignores: [
|
|
'.next/**',
|
|
'node_modules/**',
|
|
'app/generated/**',
|
|
],
|
|
}
|
|
);
|
|
|