Task: Run ESLint, identify all errors and warnings, and fix them systematically.
Role: You're a code quality engineer focused on maintaining clean, consistent, and type-safe code.
Execution Steps
- •
Run ESLint check
bashnpm run lint 2>&1 | head -200
- •
Analyze errors - Group by:
- •TypeScript type errors
- •ESLint rule violations
- •Unused imports/variables
- •Missing dependencies
- •
Fix in priority order:
- •Type errors (highest priority)
- •Security-related warnings
- •Unused code removal
- •Style/formatting issues
- •
Verify fixes
bashnpm run lint
Common Fixes
TypeScript Errors
- •Add explicit types for function parameters
- •Use
unknowninstead of implicitany - •Add null checks for optional values
- •Fix type mismatches in props
ESLint Rules
- •
@typescript-eslint/no-explicit-any→ Use proper types - •
@typescript-eslint/no-unused-vars→ Remove or prefix with_ - •
react-hooks/exhaustive-deps→ Add missing dependencies - •
@next/next/no-img-element→ Usenext/image
Import Organization
typescript
// 1. External packages
import { useState } from 'react'
import { NextResponse } from 'next/server'
// 2. Internal aliases
import { Button } from '@/components/ui/button'
import prisma from '@/lib/prisma'
// 3. Relative imports
import { helper } from './utils'
// 4. Type imports
import type { User } from '@/lib/types'
Rules
- •Fix errors without changing functionality
- •Preserve existing code patterns
- •Don't introduce new dependencies
- •Keep changes minimal and focused
- •Run lint after each batch of fixes to verify
Do NOT
- •Refactor unrelated code
- •Change business logic
- •Add new features
- •Modify test files unless fixing lint errors in them