Skip to content

Oxfmt

Oxfmt (/oʊ-ɛks-fɔːr-mæt/) 是 JavaScript 生态系统中的一款高性能格式化工具。

支持的语言

JavaScript、JSX、TypeScript、TSX、JSON、JSONC、JSON5、YAML、TOML、HTML、Angular、Vue、CSS、SCSS、Less、Markdown、MDX、GraphQL、Ember、Handlebars

面向大规模场景设计

Oxfmt 专为大型代码库和 CI 环境打造,注重高吞吐量与可预测的性能表现。

它基于 Oxc 编译器栈构建,避免了现有格式化工具实现中常见的架构瓶颈。

我们的 基准测试 显示,Oxfmt 的速度约为 Prettier 的 30 倍,是 Biome 的 2 倍。

内置功能齐全

Oxfmt 包含通常需要额外 Prettier 插件才能实现的功能:

与 Prettier 兼容

Oxfmt 可无缝集成到现有的 Prettier 工作流中。

oxfmt CLI 默认行为与 Prettier 相似,使得迁移时对脚本和工具链的修改最小化。

Oxfmt 与 Prettier 的 JavaScript 格式化完全一致。从较新版本的 Prettier 迁移时,应不会出现格式差异;任何差异均视为缺陷。

目前,Oxfmt 通过了约 95% 的 Prettier JavaScript 与 TypeScript 测试用例。剩余案例属于小众场景,我们正与 Prettier 团队协作,逐步统一格式化行为。

无需额外依赖或配置。

快速开始

oxfmt 安装为开发依赖项:

sh
pnpm add -D oxfmt

package.json 中添加脚本:

package.json
json
{
  "scripts": {
    "fmt": "oxfmt",
    "fmt:check": "oxfmt --check"
  }
}

格式化文件:

sh
pnpm run fmt

检查格式化结果但不写入文件:

sh
pnpm run fmt:check

下一步:

参考资料