Skip to content
Latchkey

ESLint vs Biome: CIに適したlinterはどちら?

Biomeは高速なオールインワンのRustツールチェーン。ESLintは膨大なルールとpluginのエコシステムを持つ、拡張可能な標準。

ESLintは確立されたJavaScript/TypeScriptのlinterで、コミュニティ製の数千のルールとpluginを持ちます。BiomeはRustベースのツールチェーンで、1つの高速なバイナリでlintとフォーマットを行います。

ESLintBiome
速度より遅い(JS、pluginのオーバーヘッド)非常に高速(Rust)
ルール / pluginエコシステム巨大より小さい、成長中
フォーマット別途(Prettier)組み込み
設定柔軟、肥大化しがち最小限、opinionated
セットアップ可動部が多い単一バイナリ

CIでは

Biomeははるかに高速に動作し、lintとフォーマットを1つのツールにまとめるため、パイプラインを簡素化し高速化します。ESLintはカバレッジで勝ります。特定のplugin(フレームワークのルール、アクセシビリティ、importの並び順、カスタムルール)に依存する場合、ESLintには依然としてそれらがあり、Biomeにはない可能性があります。一部のチームは速度のためにBiomeを実行し、BiomeにないルールのためだけにESLintを残します。

移行の労力

Biomeは多くの一般的なESLintルールをカバーしますが、すべてではありません。切り替える前に有効化しているpluginとルールを監査しましょう。Biomeがまだ適用できないものには、小さなESLint設定を残すことを想定してください。

結論

最小限の設定で高速なlint+formatが欲しく、ルールがカバーされている: Biome。幅広いESLintのpluginエコシステムに依存する: ESLintにとどまる(または両方を実行)。移行前にルールカバレッジを確認しましょう。

関連ガイド