前端嘛 Logo
前端嘛
比 Prettier 快 30 倍!Oxfmt Beta 发布,前端格式化工具迎来新时代

比 Prettier 快 30 倍!Oxfmt Beta 发布,前端格式化工具迎来新时代

2026-02-25

2026 年 2 月 24 日,Oxc 团队正式发布了 Oxfmt Beta 版本。这款基于 Rust 构建的代码格式化工具,不仅比 Prettier 快 30 倍以上,还实现了 100% 的 Prettier 兼容性测试通过率。前端工具链的「Rust 化」浪潮,正在以超乎想象的速度席卷而来。


一、Oxfmt 是什么?

Oxfmt 是 Oxc(The JavaScript Oxidation Compiler)项目下的代码格式化工具,由 VoidZero 团队开发维护。Oxc 项目旨在用 Rust 重写 JavaScript/TypeScript 工具链中的核心基础设施,目前已经涵盖了 Parser、Linter(Oxlint)、Formatter(Oxfmt)等多个关键模块。

简单来说,Oxfmt 就是 Rust 版的 Prettier——但更快、更强。

Oxfmt 的底层构建在 Biome 的 biome_formatter 基础设施之上(fork),同时得到了 Biome 团队核心成员 @ematipico 和 @MichaReiser 的支持与协助,也与 Prettier 维护者 @fisker 等人保持着紧密的合作关系。

二、Beta 版带来了什么?

1. 100% Prettier 兼容性

这是 Beta 版最重磅的进展。

在 2025 年 12 月的 Alpha 版本中,Oxfmt 通过了约 95% 的 Prettier JavaScript/TypeScript 测试用例。而仅仅两个多月后,Beta 版已经实现了 100% 的测试通过率

这意味着你可以放心地从 Prettier 迁移到 Oxfmt,格式化结果将完全一致,不会出现 diff 噪音。

2. 性能:30 倍的碾压

基于 Outline 仓库的基准测试结果:

工具相对速度Oxfmt基准(1x)Biome~3x 慢Prettier(使用 Oxc Parser)~20x 慢Prettier(原生)~30x 慢

没有缓存的首次运行,Oxfmt 比 Prettier 快 30 倍以上,比同样基于 Rust 的 Biome 也快 3 倍。这个性能差距在大型项目中尤为明显——你的 CI 流水线和保存时格式化将获得质的飞跃。

3. 支持 18+ 种文件类型

Beta 版大幅扩展了语言支持,现在 一个格式化工具就能覆盖你项目中的所有文件

  • 核心语言:JavaScript、JSX、TypeScript、TSX

  • 数据格式:JSON、JSONC、JSON5、YAML、TOML

  • 样式语言:CSS、SCSS、Less

  • 模板框架:HTML、Vue、Angular、Ember/Handlebars

  • 文档格式:Markdown、MDX

  • 其他:GraphQL

不再需要为不同文件类型配置不同的格式化工具了。

4. 内置 Import 排序

Oxfmt 内置了 import 排序功能,支持自定义分组规则,无需再额外安装 eslint-plugin-import@trivago/prettier-plugin-sort-imports 等插件。

5. 内置 Tailwind CSS 类名排序

如果你使用 Tailwind CSS,Oxfmt 内置了自动类名排序功能,完全替代 prettier-plugin-tailwindcss。无论是 JS/TS 文件中的 JSX,还是 HTML/Vue 模板文件,都能自动排序。

少装一个插件,少一份配置,少一个可能的兼容性问题。

6. package.json 字段排序

默认开启 package.json 字段自动排序,保持文件结构的一致性和可读性。

7. 嵌入式语言格式化

支持 CSS-in-JS 的嵌入式格式化,以及 Angular 模板和样式的内联格式化。

三、如何迁移?

从 Prettier 迁移到 Oxfmt 非常简单:

# 1. 安装
npm install -D oxfmt

# 2. 自动迁移 Prettier 配置
npx oxfmt --migrate prettier

# 3. 更新 package.json 脚本
{
  "scripts": {
    "format": "oxfmt --write .",
    "format:check": "oxfmt --check ."
  }
}
# 4. 更新 CI 中的格式化检查命令
# 将 prettier --check 替换为 oxfmt --check

迁移命令 --migrate prettier 会自动将你的 .prettierrc 配置转换为 Oxfmt 格式,最大限度降低迁移成本。

四、一个值得关注的默认值变更

Oxfmt 将默认的 printWidth 从 Prettier 的 80 改为了 100

团队给出的理由是:

  • TypeScript 的类型注解天然会让代码行更长

  • import 语句经常包含多个导入项

  • 现代显示器提供了更多的水平空间

如果你希望保持与 Prettier 一致的行为,可以在配置中手动设为 80。

五、编辑器支持

Oxfmt 已经支持所有主流编辑器:

  • VS Code / Cursor — 通过 Oxc 扩展

  • Zed — 原生支持

  • IntelliJ IDEA / WebStorm — 通过插件

  • Neovim — 通过 LSP

  • 任何支持 LSP 协议的编辑器

保存时自动格式化,体验与 Prettier 完全一致,但速度快得多。

六、谁在用?

Oxfmt 已经被多个知名开源项目采用:

  • Vue.js Core — Vue 3 核心仓库

  • Turborepo — Vercel 的 Monorepo 构建工具

  • Sentry JavaScript SDK — 前端错误监控

  • Hugging Face JS — AI 模型平台前端

  • 以及更多...

当这些重量级项目率先采用时,说明 Oxfmt 已经具备了生产级的稳定性。

七、前端工具链的 Rust 化趋势

回顾近两年的前端工具链变革,一个清晰的趋势已经形成:

传统工具Rust 替代方案状态webpackRspack / Rolldown已稳定BabelSWC / Oxc Parser已稳定ESLintOxlint已稳定(2025.06)PrettierOxfmtBeta(2026.02)Jest/VitestVitest(Rust 加速)已稳定

VoidZero(由 Vue.js 作者尤雨溪创立)正在系统性地推进这一进程,其愿景是打造一套完整的、高性能的、基于 Rust 的 JavaScript 工具链。Oxfmt 是这个拼图中的又一关键板块。

八、总结

Oxfmt Beta 的发布标志着前端代码格式化工具进入了一个新阶段:

  • 性能不再是瓶颈:30 倍的速度提升让格式化从"等待"变成"瞬间完成"

  • 兼容性不再是顾虑:100% Prettier 测试通过,迁移零风险

  • 功能不再需要拼凑:Import 排序、Tailwind 排序、多语言支持全部内置

  • 生态已经就绪:主流编辑器全面支持,大型项目率先验证

如果你还在使用 Prettier,现在是认真考虑迁移的好时机。不是因为 Prettier 不好,而是因为 Oxfmt 在保持完全兼容的基础上,提供了显著更好的体验。

前端工具链的 Rust 化浪潮,已经势不可挡。


相关链接