Skip to content

什么是 Oxc?

/oʊ ɛks siː/

氧化编译器(Oxidation Compiler)是一套用 Rust 编写的高性能 JavaScript 和 TypeScript 工具集合。

Oxc 是 VoidZero 对统一、高性能的 JavaScript 工具链愿景的一部分。它为 RolldownVite 的未来打包器)提供支持,并推动下一代超高速开发工具的诞生,这些工具能够无缝协同工作。

* 氧化是生成铁锈的化学过程

全栈最快的工具

Oxc 致力于在整个工具链中实现极致性能。这包括解析、模块解析、代码检查、格式化、转换以及压缩。

设计理念

Oxc 建立在几个核心理念之上。

性能即功能

Oxc 将速度视为产品需求。更快的工具能够提升本地反馈循环效率并降低 CI 成本。性能退化被视作缺陷。

一套工具链,共享构建模块

Oxc 是一个套件。代码检查器、格式化器、解析器、转换器、压缩器和解析器等工具均基于共享组件构建。这减少了重复工作,并使整个工具链的行为更加一致。

正确性与清晰的边界

Oxc 力求准确且可预测。当行为与其他工具不同时,差异应被明确记录。兼容性是一种特性,而非偶然。

实用的开发者体验

Oxc 关注真实项目中的实际工作流。默认设置应合理,配置应易于理解,输出应保持稳定。

你将获得什么

Oxc 提供面向用户的工具以及可复用的编译器构建模块:

  • Oxlint 是目前最快的 JavaScript 与 TypeScript 代码检查工具。其目标是兼容 ESLint 生态系统。
  • Oxfmt 是目前最快的格式化工具。其目标是实现与 Prettier 兼容的格式化效果。
  • Parser 是目前最快的 JS 与 TS 解析器,提供用于工具开发的 AST。
  • Transformer 提供目前最快的 TS、JSX 以及现代 JavaScript 转换功能。
  • Minifier 是目前最快的生产环境输出压缩工具。
  • Resolver 是目前最快的适用于 JS 与 TS 项目的模块解析器。

你可以单独使用每个工具,也可以将它们组合成一个完整的工具链。

Oxc 适合谁

  • 应用和库开发者:希望在本地和 CI 环境中获得最快的速度来完成代码检查与格式化。
  • 工具链与平台团队:希望在大规模场景下拥有快速、具备编译器级别的基础架构。
  • 工具作者:希望为 JavaScript 工具生态提供快速、可复用的库或 npm 包。