Biome: Replace ESLint + Prettier With One Rust-Powered Tool
Biome formats and lints your JavaScript and TypeScript code in a single pass, runs 50x faster than Prettier, and migrates automatically from ESLint and Prettier configs.
Mahmudul Haque Qudrati
CEO & ML Engineer
One AI engineering post, weekly
LLM benchmarks, prompt techniques, and token-cost breakdowns — not another AI news roundup.
Biome (formerly Rome) is a Rust-based toolchain that replaces ESLint and Prettier with a single binary. It formats code, lints it, and can fix many issues automatically - all in the same tool, in the same pass, with one config file.
Installation
pnpm add -D --save-exact @biomejs/biome
# Initialize config
npx @biomejs/biome init
This creates biome.json:
{
"$schema": "https://biomejs.dev/schemas/1.9.0/schema.json",
"organizeImports": { "enabled": true },
"linter": {
"enabled": true,
"rules": { "recommended": true }
},
"formatter": {
"enabled": true,
"indentStyle": "space",
"indentWidth": 2,
"lineWidth": 100
},
"javascript": {
"formatter": {
"quoteStyle": "double",
"trailingCommas": "all"
}
}
}
Team workspace
Ship faster with chat, meetings, and projects in one place — Zlyqor.
Speed Comparison
On a 100-file TypeScript project:
| Tool | Operation | Time |
|---|---|---|
| Prettier | Format 100 files | 4.2s |
| ESLint | Lint 100 files | 8.7s |
| Biome | Format + lint 100 files | 0.18s |
Biome processes both operations in a single AST parse pass. The Rust runtime eliminates JavaScript VM overhead entirely.
Running Biome
# Check (lint + format) without fixing
npx @biomejs/biome check .
# Check and auto-fix
npx @biomejs/biome check --write .
# Format only
npx @biomejs/biome format --write .
# Lint only
npx @biomejs/biome lint .
Lint Rules
Biome ships 200+ rules covering ESLint, TypeScript-ESLint, and more:
{
"linter": {
"rules": {
"recommended": true,
"correctness": {
"noUnusedVariables": "error",
"useExhaustiveDependencies": "warn"
},
"suspicious": {
"noExplicitAny": "warn",
"noConsoleLog": "warn"
},
"style": {
"noNonNullAssertion": "warn",
"useConst": "error"
}
}
}
}
Migrating From ESLint + Prettier
Biome provides automated migration commands:
# Migrate from Prettier
npx @biomejs/biome migrate prettier --write
# Migrate from ESLint
npx @biomejs/biome migrate eslint --write
These commands read your .eslintrc and .prettierrc files and generate the equivalent biome.json configuration. After migrating:
# Remove old tools
pnpm remove eslint prettier eslint-config-prettier @typescript-eslint/eslint-plugin @typescript-eslint/parser
# Update package.json scripts
# "lint": "eslint ." → "lint": "biome check ."
# "format": "prettier --write ." → (handled by biome check --write)
CI Integration
# .github/workflows/ci.yml
- name: Lint and format check
run: npx @biomejs/biome ci .
# ci mode: exits with error on any issue, no auto-fix
Monorepo Config With extends
// packages/ui/biome.json
{
"extends": ["../../biome.json"],
"linter": {
"rules": {
"style": { "noDefaultExport": "off" }
}
}
}
The VS Code extension is available and works out of the box - format on save, inline diagnostics, quick fixes.
References: Biome · GitHub · migration guide

Mahmudul Haque Qudrati
CEO & ML Engineer
Visionary technologist, software engineer, and machine learning specialist. Founder and CEO of Pristren, directing engineering teams that ship production-grade AI/ML pipelines, mission-critical full-stack applications, and developer tooling. Creator of Zlyqor, the unified team workspace platform. Author of 540+ technical guides and benchmark research reports on large language models, agentic workflows, Model Context Protocol (MCP), and modern web stacks.
More from Mahmudul
Related Articles
How to Use Claude to Make Videos Like Vox and Others
Claude can help you make Vox-style videos by generating scripts, editing with code, and automating animation. Here's a practical guide with real workflows and costs.
OpenAI Ends Cursor Model Access on Nov 12, 2026: What Developers Need to Know
OpenAI will terminate Cursor's access to its models on November 12, 2026, following SpaceX's acquisition. This guide explains the timeline, why it happened, and practical steps to migrate your workflow.
I Used Claude Code to Get a Second Opinion on My MRI: A Practical Overview
A developer fed his MRI scan to Claude Code and got a second opinion. Here's how the experiment worked, what it cost, and why you shouldn't rely on it for medical decisions.
// discussion
Comments