Skip to content

chore: replace eslint with biome for linting and formatting#10

Closed
barney-w wants to merge 2 commits into
mainfrom
chore/replace-eslint-with-biome
Closed

chore: replace eslint with biome for linting and formatting#10
barney-w wants to merge 2 commits into
mainfrom
chore/replace-eslint-with-biome

Conversation

@barney-w

@barney-w barney-w commented Mar 1, 2026

Copy link
Copy Markdown
Owner

Summary

  • Replace unused ESLint infrastructure (tooling/eslint-config/) with Biome v2 — a Rust-based linter and formatter that runs in ~65ms across 560 files
  • Configure biome with recommended rules, React domain, and formatter settings matching existing code style (single quotes, no semicolons, trailing commas, 2-space indent)
  • Update root package.json scripts: lint now runs biome check . directly (no turbo caching needed at this speed), add lint:fix and format commands
  • Remove lint task from turbo.json and delete tooling/eslint-config/ (was never wired up — no packages had lint scripts)
  • Fix lint violations across the codebase: add type="button" to buttons, remove unused imports, prefix unused variables, use template literals, add node: protocol to Node.js imports
  • Exclude generated icon files and Tailwind CSS files (which use @theme/@apply directives) from biome
  • Add .git-blame-ignore-revs to skip the bulk formatting commit in git blame

claude Bot added 2 commits March 1, 2026 17:07
Replace the unused ESLint infrastructure (tooling/eslint-config/) with
Biome v2 — a Rust-based linter and formatter that is 10-100x faster.

- Add biome.json with recommended rules, react domain, and formatter
  config (single quotes, no semicolons, trailing commas, 2-space indent)
- Update root package.json: add @biomejs/biome, replace turbo lint with
  biome check, add lint:fix and format scripts
- Remove lint task from turbo.json (was a no-op since no packages had
  lint scripts)
- Delete tooling/eslint-config/ (private package, never wired up)
- Fix all lint violations: add button types, remove unused imports,
  prefix unused variables, fix forEach return values
- Disable noisy a11y rules that conflict with intentional ARIA patterns
  in this component library (noSvgWithoutTitle, useSemanticElements,
  noStaticElementInteractions, etc.)
- Exclude Tailwind CSS files from biome (uses @theme/@apply directives
  that biome cannot parse)
- Add .git-blame-ignore-revs for the bulk formatting changes
@barney-w barney-w closed this Mar 1, 2026
@barney-w
barney-w deleted the chore/replace-eslint-with-biome branch March 1, 2026 07:32
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.

1 participant