Skip to content

chore(web): migrate to Next 16 native lint config - #94

Merged
yashranaway merged 1 commit into
mainfrom
t3code/eslint-flat-config
Aug 10, 2026
Merged

chore(web): migrate to Next 16 native lint config#94
yashranaway merged 1 commit into
mainfrom
t3code/eslint-flat-config

Conversation

@yashranaway

Copy link
Copy Markdown
Collaborator

Closes #81.

What changed

  • Upgrade Next and eslint-config-next to 16.3.
  • Replace FlatCompat with the native flat configurations for Core Web Vitals and TypeScript.
  • Remove the legacy @eslint/eslintrc and @rushstack/eslint-patch path.
  • Fix the two React Hooks findings exposed by the native configuration.
  • Adopt the generated Next 16 agent guidance and stop tracking generated next-env.d.ts.
  • Keep ESLint 9 temporarily: the React/import/a11y plugins bundled by Next 16 fail on ESLint 10. Follow-up Upgrade web lint to ESLint 10 after the Next plugin stack supports it #93 tracks removing that hold, and Dependabot now suppresses the known-failing major bump.

Verification

  • pnpm install --frozen-lockfile --filter @headless/web
  • pnpm --filter @headless/web lint
  • pnpm --filter @headless/web build
  • Rendered Playwright smoke test at desktop and mobile viewports
    • page identity and meaningful content
    • no Next error overlay or console errors
    • animated scan frame visible
    • theme toggle updates DOM state, accessible label, and local storage
    • no mobile horizontal overflow

The existing THREE.Clock and headless WebGL performance warnings remain tracked by #51.

@yashranaway
yashranaway merged commit 93c9fa2 into main Aug 10, 2026
7 checks passed
@yashranaway
yashranaway deleted the t3code/eslint-flat-config branch August 10, 2026 16:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Web ESLint is stuck on the eslintrc compat shim, blocking eslint 10 and Next 16

1 participant