Skip to content

refactor: Replace ESLint with Biome for faster linting and formatting #18

Description

@Abdelkaderbzz

Description

Migrate from ESLint to Biome for a faster, more modern linting and formatting experience.

Problem with current setup

  • ESLint is slower compared to modern alternatives
  • Requires multiple plugins for TypeScript, React, etc.
  • Separate tools needed for formatting (Prettier)

Benefits of Biome

  • 10-100x faster than ESLint/Prettier
  • Single tool for linting AND formatting
  • First-class TypeScript and React support
  • Zero config to get started
  • Compatible with most ESLint rules

Implementation

Install Biome

bun add -D @biomejs/biome
bunx biome init

Update package.json scripts

{
  "scripts": {
    "lint": "biome lint .",
    "lint:fix": "biome lint --write .",
    "format": "biome format --write .",
    "check": "biome check --write ."
  }
}

Remove old dependencies

bun remove eslint @eslint/js eslint-plugin-react-hooks eslint-plugin-react-refresh typescript-eslint globals

Migrate rules

Run bunx biome migrate eslint to convert existing rules

Files to modify

  • package.json
  • Delete eslint.config.js
  • Create biome.json
  • Update CI workflows if applicable

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions