Skip to content
Latchkey

Prettier vs Biome: CIに適したformatterはどちら?

Prettierは事実上のformatter。Biomeははるかに高速でほぼ互換の代替であり、lintも行う。

PrettierはJS/TSなどに広く採用されているopinionatedなコードformatterです。BiomeはRustのツールチェーンで、そのformatterはPrettierとの高い互換性を目指しつつ、同じバイナリでlintも行います。

PrettierBiome
速度より遅い(JS)非常に高速(Rust)
Lintingなし(フォーマットのみ)あり(format + lint)
Prettier互換性n/a高い、100%ではない
言語カバレッジ幅広い(plugin)主要なweb言語
採用遍在成長中

CIでは

format --checkのステップはpushのたびに実行されます。Biomeはそれを明らかに高速化し、Prettierとlinterを1つのツールで置き換えられます。Prettierはより幅広い言語/pluginカバレッジと、ほぼ普遍的なエディタおよびエコシステムのサポートを持ちます。互換性は高いですが完璧ではないため、切り替えると一部のファイルが再フォーマットされる可能性があります。

移行の労力

Biomeのformatterをリポジトリ全体に1つのcommitで実行し、フォーマットの差分を吸収してから、CIで適用しましょう。Biomeがフォーマットしない言語のpluginに頼っている場合はPrettierを残してください。

結論

1つのツールで高速なフォーマット(とlint)が欲しく、ほぼ互換な出力でよい: Biome。Prettierの幅広いpluginカバレッジとエコシステムの遍在性が必要: Prettierにとどまる。切り替える際は1つのcommitで再フォーマットしましょう。

関連ガイド