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 插件才能实现的功能:
- 导入语句排序
- Tailwind CSS 类名排序
- package.json 字段排序
- 嵌入式格式化(CSS-in-JS、GraphQL 等)
与 Prettier 兼容
Oxfmt 可无缝集成到现有的 Prettier 工作流中。
oxfmt CLI 默认行为与 Prettier 相似,使得迁移时对脚本和工具链的修改最小化。
Oxfmt 与 Prettier 的 JavaScript 格式化完全一致。从较新版本的 Prettier 迁移时,应不会出现格式差异;任何差异均视为缺陷。
目前,Oxfmt 通过了约 95% 的 Prettier JavaScript 与 TypeScript 测试用例。剩余案例属于小众场景,我们正与 Prettier 团队协作,逐步统一格式化行为。
无需额外依赖或配置。
快速开始
将 oxfmt 安装为开发依赖项:
sh
pnpm add -D oxfmt在 package.json 中添加脚本:
json
{
"scripts": {
"fmt": "oxfmt",
"fmt:check": "oxfmt --check"
}
}格式化文件:
sh
pnpm run fmt检查格式化结果但不写入文件:
sh
pnpm run fmt:check