feat: Switch project tooling from npm to bun and add enhanced pre-commit

checks

- Replace npm commands with bun/bunx in scripts, docs, and CI - Add
enhanced pre-commit checks with parallel execution - Document pre-commit
hook behavior in PRE_COMMIT_HOOKS.md - Update .gitignore/.dockerignore
for bun-debug.log - Refine ESLint config for bun and Prettier
integration - Add scripts/type-check-staged.sh for fast staged type
checks - Improve developer workflow and code quality automation
This commit is contained in:
William Valentin
2025-09-07 12:40:57 -07:00
parent 585c526a65
commit 8fa2d3fb60
14 changed files with 492 additions and 54 deletions

View File

@@ -26,7 +26,7 @@ module.exports = [
'react-hooks': reactHooksPlugin,
},
rules: {
// TypeScript ESLint recommended rules
// TypeScript ESLint rules
'@typescript-eslint/no-unused-vars': [
'error',
{ argsIgnorePattern: '^_' },
@@ -34,30 +34,23 @@ module.exports = [
'@typescript-eslint/no-explicit-any': 'warn',
'@typescript-eslint/explicit-function-return-type': 'off',
'@typescript-eslint/explicit-module-boundary-types': 'off',
'@typescript-eslint/no-inferrable-types': 'error',
'@typescript-eslint/no-empty-function': 'warn',
'@typescript-eslint/prefer-const': 'error',
'@typescript-eslint/no-var-requires': 'error',
// React Hooks rules
'react-hooks/rules-of-hooks': 'error',
'react-hooks/exhaustive-deps': 'error',
'react-hooks/exhaustive-deps': 'warn',
// General JavaScript/TypeScript rules
// General rules
'no-console': ['warn', { allow: ['warn', 'error'] }],
'no-debugger': 'error',
'no-duplicate-imports': 'error',
'no-unused-expressions': 'error',
'prefer-template': 'error',
'prefer-const': 'error',
'no-var': 'error',
'object-shorthand': 'error',
'prefer-destructuring': ['error', { object: true, array: false }],
// Code style (handled by Prettier, but good to have)
'comma-dangle': ['error', 'es5'],
quotes: ['error', 'single', { avoidEscape: true }],
semi: ['error', 'always'],
// Code style (handled by Prettier)
'comma-dangle': 'off',
quotes: 'off',
semi: 'off',
},
},
{