Compares code formatting and formatting IR between Biome and Prettier to ensure that Biome's formatting is consistent and correct. Use when validating formatter changes, debugging formatting differences, or comparing output for JavaScript, TypeScript, CSS, or other languages.
Use packages/prettier-compare/ to inspect any differences between Biome and Prettier formatting (including IR output) before shipping formatter changes.
bun (the CLI is a Bun script) and ensure dependencies have been installed.--rebuild so the Biome WASM bundle matches your current Rust changes.Snippets passed as CLI args:
bun packages/prettier-compare/bin/prettier-compare.js --rebuild 'const x={a:1,b:2}'
Force a language (useful when the tool cannot infer it from a filename):
bun packages/prettier-compare/bin/prettier-compare.js --rebuild -l ts 'const x: number = 1'
Compare files on disk:
bun packages/prettier-compare/bin/prettier-compare.js --rebuild -f src/example.tsx
Read from stdin (great for piping editor selections):
echo 'const x = 1' | bun packages/prettier-compare/bin/prettier-compare.js --rebuild -l js
-l/--language when formatting code without an extension so both formatters pick the correct parser.-f/--file for large samples or snapshot tests so you can iterate directly on project fixtures.packages/prettier-compare/README.md for deeper CLI details; mirror any updates here, keeping the hard requirement that commands include --rebuild.