在线工具 编程开发

Biome

Format, lint, and more in a fraction of a second.

标签:

网站截图

网站简介

Biome是一款现代、高性能的Web项目工具链,由Rust语言编写,旨在为开发者提供一套统一、快速且可扩展的开发工具。它主要包含代码格式化(Formatter)和代码检查(Linter)两大核心功能,支持多种主流前端语言和标记语言,帮助团队在持续集成和日常开发中节省时间,提升代码质量。Biome的设计理念是“一站式工具链”,通过简洁的命令行接口,让开发者可以轻松地格式化代码、发现并修复问题,并且能够与流行的编辑器无缝集成,实现即时反馈。

主要功能/内容

1. 快速代码格式化(Format code like Prettier,save time)

Biome提供了一个高性能的格式化器,兼容Prettier的格式化风格,兼容度达到97%(具体已知差异见官方文档)。它支持以下语言:

  • JavaScript
  • TypeScript
  • JSX
  • TSX
  • JSON
  • HTML
  • CSS
  • SCSS
  • GraphQL
  • YAML
  • Markdown

该格式化器不仅速度快,而且能够处理格式不规范的代码——即使在编辑器里编写尚未完成的代码,也可以实时进行格式化。其速度优势非常显著:在Intel Core i7-1270P处理器上,对171,127行代码(共2,104个文件)进行格式化时,Biome仅需约0秒,而Prettier需要约0秒(官方展示约35倍速度提升)。

2. 强大的代码检查(Fix problems,learn best practice)

Biome内置的linter是一款高性能的静态分析工具,集成了来自ESLint、TypeScript ESLint以及其他来源的670条规则。它可以检查代码中的反模式、潜在错误、最佳实践问题等,并输出详细且上下文的诊断信息。例如,它会提示使用.flatMap()替代.map().flat()链式调用,并给出安全的自动修复方案。linter支持通过--write参数自动修复可修复的问题,帮助开发者在编码过程中即时改进。

3. 统一执行命令(Everything all at once)

Biome提供check命令,可以同时运行格式化和lint检查,并支持--write参数自动应用所有可用的修复。这一功能让开发者在一条命令中完成全部代码清理工作,简化工作流程。命令示例:

biome check --write

同样支持npm、pnpm、bun、deno、yarn等包管理器的调用方式。

4. 多平台支持与安装

Biome支持macOS、Linux和Windows系统,可以通过npm、pnpm、bun、deno、yarn以及独立脚本安装。例如:

npm i -D -E @biomejs/biome

5. 官方文档与交互工具

网站提供了完整的文档、博客、Playground在线试玩、Discord社区、GitHub仓库等资源。用户可以查看版本更新(如v2.6带来的Markdown、SCSS、YAML支持、JavaScript插件以及更好的Tailwind集成)、学习配置方法、参与社区讨论。

特点说明

  • 极速性能:由于采用Rust编写,并借鉴了rust-analyzer的架构,Biome在性能上表现卓越,显著快于传统Node.js实现的工具(如Prettier和ESLint)。
  • 高兼容性:格式化器与Prettier高度兼容,linter规则来源于主流工具,降低了迁移成本。
  • 一体化体验:通过check命令同时执行格式化和lint,工具间无缝协作,形成完整的工具链。
  • 丰富的语言支持:覆盖了Web开发中常用的多种语言和格式,包括CSS、SCSS、GraphQL、YAML、Markdown等。
  • 可扩展性:支持JavaScript插件,能够根据项目需求扩展功能。
  • 友好的诊断输出:Linter提供清晰的错误信息和安全的自动修复提示,对开发者非常友好。
  • 活跃的社区与开源:项目在GitHub上开源,支持Discord、Mastodon、Open Collective等社区渠道,持续迭代。

总而言之,Biome是一个面向现代Web开发的综合工具链,它通过速度、兼容性和集成性,为开发者提供了高效的代码格式化与检查解决方案,是Prettier和ESLint的强力替代选择。