biome

$npx mdskill add TerminalSkills/skills/biome

Configure linting and formatting with Biome's Rust engine.

  • Replaces ESLint and Prettier for unified code quality.
  • Integrates with IDEs and supports JavaScript, TypeScript, and CSS.
  • Executes zero-config rules for instant diagnostics.
  • Delivers 100x faster execution than traditional toolchains.
SKILL.md
.github/skills/biomeView on GitHub ↗
---
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

```json
// biome.json
{
  "$schema": "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

```bash
# 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

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

## Installation

```bash
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
More from TerminalSkills/skills