Skip to content

Oxc とは何か?

/oʊ ɛks siː/

Oxidation Compiler は、Rust で書かれた、JavaScript および TypeScript 向けの高パフォーマンスツールの集合体です。

Oxc は VoidZero の、統合的かつ高パフォーマンスな JavaScript ツールチェインのビジョンの一環です。このプロジェクトは Rolldown(Vite 未来のバンドラ)を駆動し、シームレスに連携する次世代の超高速開発ツールの実現を可能にします。

* Oxidation は錆を生じさせる化学反応のこと

ツールチェイン全体で最速

Oxc はツールチェイン全体におけるパフォーマンスに注力しています。パース、モジュール解決、Lint、フォーマット、変換、マイナフィケーションの各フェーズをカバーします。

信念

Oxc はいくつかのコア理念に基づいて構築されています。

パフォーマンスは機能である

Oxc では速度を製品要件として扱います。より高速なツールは、ローカルでのフィードバックループを改善し、CI コストを削減します。パフォーマンスの低下はバグとして扱われます。

1つのツールチェイン、共有されるビルディングブロック

Oxc は一連のツールです。リンター、フォーマッタ、パーサー、トランスフォーマー、ミニファイア、リゾルバーなどのツールは、共有されたコンポーネントに基づいて構築されています。これにより重複作業が削減され、ツールチェイン全体での振る舞いが一貫性を持ちます。

正確性と明確な境界

Oxc は正確で予測可能な振る舞いを目指します。他のツールと振る舞いが異なる場合、その違いは明確に文書化すべきです。互換性は偶然ではなく、機能として設計されています。

実用的な開発者体験

Oxc は現実のプロジェクトで実際に働けるワークフローに焦点を当てます。デフォルト設定は合理的であり、設定は理解しやすく、出力結果は安定しているべきです。

あなたが得られるもの

Oxc にはエンドユーザー向けツールと再利用可能なコンパイラのビルディングブロックが含まれます:

  • Oxlint は、最も高速な JavaScript および TypeScript リンターです。ESLint エコシステムとの互換性を追求しています。
  • Oxfmt は、最も高速なフォーマッタです。Prettier 互換のフォーマットを実現します。
  • Parser は、ツール用に最適化された、最も高速な JS および TS パーサー。AST を提供します。
  • Transformer は、最も高速な TS、JSX、現代的な JavaScript 変換を提供します。
  • Minifier は、本番出力向けに最も高速なミニファイアです。
  • Resolver は、JS および TS プロジェクト向けに最も高速なモジュールリゾルバーです。

各ツールは個別に使用することも、一つのツールチェインとして一緒に使うことも可能です。

どんな人にとって有益か?

  • アプリケーションおよびライブラリ開発者:ローカル環境および CI 環境で最も高速な lint および format ループを求める方。
  • ツールチェインおよびプラットフォームチーム:規模に応じて高速なコンパイラ級の基盤を必要とする方。
  • ツール作者:高速で再利用可能なクレートや npm パッケージを求める、JS ツール向けの開発者。