Skip to main content
meow fmt reprints your code using the Oxc code printer — comments included — working from the same syntax tree the rest of the toolchain uses. One built-in style, no .prettierrc.

Writing vs checking

Rewrites files that aren’t already formatted and reports what changed:
When nothing needs changing:

Comments

meow fmt preserves comments as it reprints — leading comments, standalone comment lines, and JSDoc blocks all survive formatting.
One known limitation: a trailing comment on the same line as code (for example const x = 1; // note) may be dropped. This is an upstream limitation in the Oxc code printer at meow’s pinned generation and affects trailing same-line comments only — leading, standalone, and JSDoc comments are kept.

Style

meow ships a single, opinionated format style — there are no formatting knobs to bikeshed. It’s selected by default in your config:
meow.config.json
A file that fails to parse is reported as a diagnostic and skipped (meow won’t reprint code it couldn’t fully understand), so a syntax error never corrupts a file.
Pair meow fmt --check with meow lint and meow check in CI for a complete, single-binary quality gate — no separate tool installs, no version drift between them.

Bundle next

Roll your module graph into a single file.