biome

Category: General Risk: High risk ★ 4.2 · Rating 4.2/5 (86) TerminalSkills/skills Apache-2.0

Rating is derived from the repo's GitHub stars and shown for reference.

shell_execution

name: biome
description: >-
You are an expert in Biome, the Rust-based toolchain that replaces ESLint
and Prettier with a single, fast tool. You help developers configure
linting, formatting, and import sorting for JavaScript, TypeScript, JSX,
JSON, and CSS — achieving 100x faster execution than ESLint+Prettier with
zero configuration, unified diagnostics, and IDE integration.
license: Apache-2.0
compatibility: ''
metadata:
author: terminal-skills
version: 1.0.0
category: Developer Tools
tags:
- linter
- formatter
- rust
- fast
- eslint-alternative
- prettier-alternative

Biome — Fast Linter and Formatter (ESLint + Prettier Replacement)

You are an expert in Biome, the Rust-based toolchain that replaces ESLint and Prettier with a single, fast tool. You help developers configure linting, formatting, and import sorting for JavaScript, TypeScript, JSX, JSON, and CSS — achieving 100x faster execution than ESLint+Prettier with zero configuration, unified diagnostics, and IDE integration.

Core Capabilities

Configuration

// biome.json
{
  "": "https://biomejs.dev/schemas/1.9.4/schema.json",
  "organizeImports": { "enabled": true },
  "linter": {
    "enabled": true,
    "rules": {
      "recommended": true,
      "complexity": {
        "noForEach": "warn",
        "useSimplifiedLogicExpression": "warn"
      },
      "correctness": {
        "noUnusedVariables": "error",
        "noUnusedImports": "error",
        "useExhaustiveDependencies": "warn"
      },
      "suspicious": {
        "noExplicitAny": "warn",
        "noConsoleLog": "warn"
      },
      "style": {
        "noNonNullAssertion": "warn",
        "useConst": "error"
      },
      "nursery": {
        "useSortedClasses": "warn"
      }
    }
  },
  "formatter": {
    "enabled": true,
    "indentStyle": "space",
    "indentWidth": 2,
    "lineWidth": 100,
    "lineEnding": "lf"
  },
  "javascript": {
    "formatter": {
      "quoteStyle": "double",
      "semicolons": "always",
      "trailingCommas": "all",
      "arrowParentheses": "always"
    }
  },
  "files": {
    "ignore": ["node_modules", "dist", ".next", "*.gen.ts"]
  }
}

Usage

# Format
biome format --write .

# Lint
biome lint .

# Both + import sorting
biome check --write .

# CI (check without writing)
biome ci .

# Migrate from ESLint/Prettier
biome migrate eslint --write
biome migrate prettier --write

IDE Integration

// .vscode/settings.json
{
  "editor.defaultFormatter": "biomejs.biome",
  "editor.formatOnSave": true,
  "editor.codeActionsOnSave": {
    "quickfix.biome": "explicit",
    "source.organizeImports.biome": "explicit"
  }
}

Installation

npm install -D @biomejs/biome
npx @biomejs/biome init                   # Generate biome.json

Best Practices

  1. Replace ESLint+Prettier — Biome does both linting and formatting; remove separate configs, one tool
  2. biome check --write — Format + lint + organize imports in one command; use in pre-commit hooks
  3. biome ci — Use in CI pipelines; exits non-zero on any issue without modifying files
  4. Migrate command — Use biome migrate eslint to convert existing ESLint config; smooth transition
  5. Performance — Biome processes 1000+ files in <100ms (vs ESLint: 10-30 seconds); instant feedback
  6. Import sorting — Enable organizeImports; groups React, third-party, local imports automatically
  7. Nursery rules — Enable experimental rules for Tailwind class sorting (useSortedClasses)
  8. Git hooks — Use with lint-staged or husky; biome check --write --staged for pre-commit