Biome is a toolchain for web projects written in Rust. It combines a formatter and a linter into one tool, aimed at developers who want fast, consistent code formatting and static analysis without stitching together separate tools like Prettier and ESLint.
It works on JavaScript, TypeScript, JSX, JSON, CSS, and GraphQL. Biome markets itself around performance and compatibility: it claims 97% compatibility with Prettier's formatting output and ships with more than 500 lint rules pulled from ESLint, typescript-eslint, and other sources. It's built to run interactively inside an editor, formatting and linting code as you type, and it exposes first-class LSP support.
ci command checks formatting and linting without writing changes, suited for pipelines.Biome fits projects that currently run separate formatter and linter tools (like Prettier plus ESLint) and want to consolidate into one faster toolchain with a single config file. It's a good match for teams that value speed, since it's built in Rust and benchmarks itself against JS-based alternatives.
It also suits projects where CI check time matters, teams that want a single dependency to manage instead of a chain of plugins, and setups where minimal Node.js dependency is a plus (Biome can run without Node).
It's not a good fit if you need deep, highly customized ESLint plugin ecosystems that Biome hasn't reimplemented, or if your project's linting relies on niche rules or frameworks not yet covered by Biome's rule set. Projects requiring 100% pixel-identical Prettier output for every edge case may also hit gaps, since Biome states 97% compatibility, not 100%.
Install Biome as a dev dependency via npm:
npm install --save-dev --save-exact @biomejs/biome
Then run it through npx:
# format files
npx @biomejs/biome format --write
# lint files and apply the safe fixes
npx @biomejs/biome lint --write
# run format, lint, etc. and apply the safe fixes
npx @biomejs/biome check --write
# check all files against format, lint, etc. in CI environments
npx @biomejs/biome ci
You can also try Biome without installing anything, using the online playground compiled to WebAssembly. Biome doesn't strictly require Node.js to function; a manual installation path exists for environments without it. Editor extensions are available as first-party integrations for interactive formatting and linting while you write code.