A toolchain for web projects, aimed to provide functionalities to maintain them. Biome offers formatter and linter, usable via CLI and LSP.
Find a file
Marat Dulin 5deb1419c5
Some checks failed
CI on main / Test (push) Has been cancelled
CI on main / Format Rust Files (push) Has been cancelled
CI on main / Lint Rust Files (push) Has been cancelled
CI on main / Check Dependencies (push) Has been cancelled
CI on main / Test262 Coverage (push) Has been cancelled
Release / Release (push) Has been cancelled
Repository dispatch on main / Build @biomejs/wasm-web (push) Has been cancelled
Release / version (push) Has been cancelled
Release / Package darwin-arm64 (push) Has been cancelled
Release / Package darwin-x64 (push) Has been cancelled
Release / Package linux-arm64-musl (push) Has been cancelled
Release / Package linux-x64-musl (push) Has been cancelled
Release / Package win32-arm64 (push) Has been cancelled
Release / Package win32-x64 (push) Has been cancelled
Release / Package linux-arm64 (push) Has been cancelled
Release / Package linux-x64 (push) Has been cancelled
Release / Build WASM (push) Has been cancelled
Release / Package JavaScript APIs (push) Has been cancelled
Release / Publish CLI (push) Has been cancelled
Release / Publish JS API (push) Has been cancelled
Repository dispatch on main / Repository dispatch (push) Has been cancelled
fix(benchmark): biome commands were failing immediately during the benchmark (#8558)
2025-12-23 00:15:54 +01:00
.cargo chore: use tombi (#8534) 2025-12-21 21:14:22 +00:00
.changeset fix(linter): nursery/noMisusedPromises should emit warnings when a function returns T | Promise<T> (#8495) 2025-12-22 08:35:56 +00:00
.claude feat: promote rules (#7137) 2025-08-09 21:38:26 +01:00
.devcontainer chore(deps): update mcr.microsoft.com/devcontainers/universal docker tag to v3 (#6262) 2025-06-09 12:46:22 +02:00
.github chore(deps): update github-actions (major) (#8548) 2025-12-22 13:35:17 +09:00
benchmark fix(benchmark): biome commands were failing immediately during the benchmark (#8558) 2025-12-23 00:15:54 +01:00
crates fix(html): improved svelte parsing (#8555) 2025-12-22 14:34:03 +00:00
e2e-tests fix: resolve settings based on path (#6175) 2025-05-30 12:09:24 +01:00
fuzz chore: use tombi (#8534) 2025-12-21 21:14:22 +00:00
packages chore(deps): update @biomejs packages (#8542) 2025-12-22 11:18:46 +09:00
plugins feat: execute JS plugin in the Boa engine (#7300) 2025-08-28 14:11:20 +09:00
scripts chore: fix formatting and code of script (#7821) 2025-10-22 10:14:27 +01:00
xtask fix(parser/css): :active-view-transition-type parameters should accept comma-separated custom identifiers (#8531) 2025-12-21 19:40:19 -05:00
.coderabbit.yaml ci: remove enrichment of coderabbit 2025-12-22 10:53:15 +00:00
.dockerignore Dockerised benchmark tool (#4494) 2023-05-21 12:22:26 +01:00
.editorconfig feat(migrate): migrate nursery rules (#2382) 2024-05-14 08:34:04 +01:00
.git-blame-ignore-revs chore: add #5236 to .git-blame-ignore-revs (#5238) 2025-03-02 12:56:35 +00:00
.gitattributes feat: better assist (#4508) 2024-11-27 16:36:13 +00:00
.gitignore chore: add .zed to gitignore (#7634) 2025-10-02 13:29:30 +01:00
.markdownlint.json fix(core): infer for-of and for-in loop variables (#6809) 2025-07-10 10:26:42 +02:00
AGENTS.md feat(html): implement {@debug} parsing (#7969) 2025-11-03 16:13:59 +00:00
biome.json feat(core): add force-ignore syntax to files.includes (#7359) 2025-08-31 15:51:06 +02:00
Cargo.lock feat(graph): support CSS files (#8329) 2025-12-19 16:34:08 +00:00
Cargo.toml chore: use tombi (#8534) 2025-12-21 21:14:22 +00:00
CHANGELOG.md ci: publish workflow via changesets (#5038) 2025-02-06 08:28:51 +00:00
CHANGELOG_v1.md ci: add a job for linting markdown files (#6825) 2025-07-09 17:42:30 -04:00
CLAUDE.md chore: ai docs revamp (#7879) 2025-10-26 15:26:44 +00:00
clippy.toml chore: use tombi (#8534) 2025-12-21 21:14:22 +00:00
CODE_OF_CONDUCT.md chore: update contact method in CODE_OF_CONDUCT.md (#5752) 2025-04-23 14:37:21 -04:00
CONTRIBUTING.md chore: use tombi (#8534) 2025-12-21 21:14:22 +00:00
Dockerfile.benchmark chore(deps): update rust:1.91.1-bookworm docker digest to c1e5f19 (#8456) 2025-12-15 12:29:15 +09:00
GOVERNANCE.md chore: fix various typos across codebase (#7216) 2025-08-14 11:12:41 +09:00
insta.yml fix(core): computed scan kind (#6378) 2025-06-19 09:46:04 +01:00
justfile chore: use tombi (#8534) 2025-12-21 21:14:22 +00:00
LICENSE-APACHE docs(LICENSE-APACHE): fill copyright placeholder (#1166) 2023-12-13 16:34:35 +01:00
LICENSE-MIT chore: tidy-up licenses (#3438) 2024-07-15 12:19:59 +01:00
package.json chore(deps): update pnpm to v10.26.1 (#7957) 2025-12-22 13:35:07 +09:00
pnpm-lock.yaml chore(deps): update dependency eslint to v9.39.2 (#8544) 2025-12-22 11:33:07 +09:00
pnpm-workspace.yaml chore: link packages differently (#6558) 2025-06-26 13:24:14 +01:00
README.md chore: make README a symlink to the npm package README 2023-08-23 00:23:11 +02:00
RELEASES.md fix(RELEASES.md): grammar and typo error (#7993) 2025-11-05 08:21:36 +00:00
ROME_CHANGELOG.md fix(ROME_CHANGELOG.md): grammar and typo error (#7992) 2025-11-04 22:44:33 -05:00
rust-toolchain.toml ci: bundle WASM manually (#8271) 2025-11-28 09:07:23 +00:00
rustfmt.toml chore: use tombi (#8534) 2025-12-21 21:14:22 +00:00
tombi.toml chore: use tombi (#8534) 2025-12-21 21:14:22 +00:00


Biome is a performant toolchain for web projects, it aims to provide developer tools to maintain the health of said projects.

Biome is a fast formatter for JavaScript, TypeScript, JSX, JSON, CSS and GraphQL that scores 97% compatibility with Prettier.

Biome is a performant linter for JavaScript, TypeScript, JSX, JSON, CSS, and GraphQL that features more than 340 rules from ESLint, typescript-eslint, and other sources. It outputs detailed and contextualized diagnostics that help you to improve your code and become a better programmer!

Biome is designed from the start to be used interactively within an editor. It can format and lint malformed code as you are writing it.

Installation

npm install --save-dev --save-exact @biomejs/biome

Usage

# 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

If you want to give Biome a run without installing it, use the online playground, compiled to WebAssembly.

Documentation

Check out our homepage to learn more about Biome, or directly head to the Getting Started guide to start using Biome.

More about Biome

Biome has sane defaults and it doesn't require configuration.

Biome aims to support all main languages of modern web development.

Biome doesn't require Node.js to function.

Biome has first-class LSP support, with a sophisticated parser that represents the source text in full fidelity and top-notch error recovery.

Biome wants to offer a high-quality Developer Experience, with descriptive diagnostics and great performance.

Biome unifies functionalities that have previously been separate tools. Building upon a shared base allows us to provide a cohesive experience for processing code, displaying errors, parallelize work, caching, and configuration.

Read more about our project philosophy.

Biome is MIT licensed or Apache 2.0 licensed and moderated under the Contributor Covenant Code of Conduct.

Funding

You can fund the project in different ways

Project sponsorship and funding

You can sponsor or fund the project via Open collective or GitHub sponsors

Biome offers a simple sponsorship program that allows companies to get visibility and recognition among various developers.

Biome offers enterprise support, where Core Contributors can be employed to work on company-focused projects.

Sponsors

Platinum Sponsors

Depot logo

Silver Sponsors

L2BEAT logo Phoenix Labs logo Lokalise logo

Bronze Sponsors

Nanabit logo Vital logo CodeRabbit logo Forge42 logo RStudio logo Pennylane logo JetBrains logo EGSTOCK, Inc. logo Convex logo Graphite logo Kraken Tech logo