Skip to content

Oxlint の一般提供開始

本投稿では、Oxlint 初回の一般提供リリースを発表します。 より多くの機能と改善が加えられた最新安定版については、Oxlint v1.0 安定版の発表 をご参照ください。

Oxlint が一般提供開始されたことを心よりお喜び申し上げます!
この重要なマイルストーンは、当チームが問題を迅速に把握・対応できる能力を備えたことを示しています。

Oxlint は、デフォルトで設定なしに誤ったコードや無意味なコードを検出することを目的とした、JavaScript ライターです。

使い方

現時点での Oxlint は、ESLint を完全に置き換えることを想定していません
ワークフローにおいて ESLint が遅さのボトルネックになる場合に、その補完としてご利用ください。

より迅速なフィードバックループを得るため、lint-staged や CI 環境での設定において、ESLint よりも前段で oxlint を実行することをお勧めします。大規模なコードベースでも数秒で実行可能であるためです。

あなたの JavaScript / TypeScript プロジェクトで Oxlint を試すには、リポジトリのルートディレクトリで以下のコマンドを実行するだけです:

sh
$ npx oxlint@latest
sh
$ pnpm dlx oxlint@latest
sh
$ yarn dlx oxlint@latest
sh
$ bunx oxlint@latest
sh
$ deno run npm:oxlint@latest

または、インストールガイド を参照して詳細手順をご確認ください。

設計思想

ESLint に比べ 50〜100 倍高速

実際のケースでは、ショッピーファーム社(Shopify)が報告しているように、75 分かかっていた CI 内の ESLint 実行時間が、わずか 10 秒にまで短縮されました。

プレクト(Preact)の開発者であり、ショッピーファーム社の DX チームメンバーであるジェイソン・ミラー氏によるコメント:

Oxlint はショッピーファームにとって非常に大きな成果です。従来のラインタスクは 75 分かかり、そのため 40 以上のワーカーに分散して並列処理していました。

一方、Oxlint は単一ワーカーで同じコードベースを約 10 秒で静的解析でき、出力結果もより解読しやすくなっています。

移行時に、古い設定では見過ごされていたいくつかのバグも発見できました!

パフォーマンス向上の大部分は、設計段階から性能を最優先に考慮した点に起因します。特に、Rust を使用し、並列処理を活用していることが鍵となっています。

正しさのための検査

Oxlint は、デフォルトで誤り、冗長性、混乱を招くコードを識別することに焦点を当てています。
「パフォーマンス(perf)」「疑わしい動作(suspicious)」「細かいルール(pedantic)」「スタイル(style)」など、不要な煩雑なルールはすべてデフォルトで無効になっています。

使用の容易さ

新しい JavaScript / TypeScript プロジェクトのセットアップは、ますます複雑になっています。
ツール間の互換性問題に直面する可能性が高く、何時間も無駄な時間を費やしてしまうことも珍しくありません。

そのため、Oxlint は初期状態から ゼロ設定 を実現。
ノード.js の導入も必須ではありません。
ほとんどのカスタマイズはコマンドラインから行え、また、ESLint の設定ファイルからの読み取り機能は現在開発中です。

拡張された診断情報

ラインタスクのメッセージを理解するのは難易度が高い場合があります。
Oxlint は、根本原因を特定し、役立つメッセージを提示することで、その負担を軽減することを目指しています。
これにより、長いルール説明文を読み込む必要がなくなり、貴重な時間を節約できます。

VS Code リポジトリoxlint -D perf を実行した例:

統合されたルール

現時点では、Oxlint はプラグインシステムを提供していませんが、
タイプスクリプト、リアクト、ジェスト、ユニコーン、JSX-a11y、インポートなど、人気プラグインからのルールを積極的に統合しています。

我々は、プラグインが JavaScript エコシステムにおける重要性を認識しており、また、基底言語(DSL)に基づいたプラグインシステムの調査も進行中です。

ただし、あなたが独立型のラインタスクを好むなら、以下のような手間が不要になります:


ラントする楽しさをお楽しみください。楽しいホリデーシーズンをお過ごしください!

始めたい方は、インストールガイド からスタートし、
oxc プロジェクトについて をさらに学び、
または Hacker News で議論に参加してください。