On this page
deno fmt, code formatting
deno fmt [OPTIONS] [files]...Auto-format various file types.
deno fmt myfile1.ts myfile2.ts
Supported file types are:
JavaScript, TypeScript, Markdown, JSON(C) and Jupyter Notebooks
Supported file types which are behind corresponding unstable flags (see formatting options):
HTML, CSS, SCSS, SASS, LESS, YAML, Svelte, Vue, Astro and Angular
Format stdin and write to stdout:
cat file.ts | deno fmt -
Check if the files are formatted:
deno fmt --check
Ignore formatting code by preceding it with an ignore comment:
// deno-fmt-ignore
Ignore formatting a file by adding an ignore comment at the top of the file:
// deno-fmt-ignore-file
Options Jump to heading
--config Jump to heading
Short flag: -c
Configure different aspects of deno including TypeScript, linting, and code formatting.
Typically the configuration file will be called deno.json or deno.jsonc and
automatically detected; in that case this flag is not necessary.
--no-config Jump to heading
Disable automatic loading of the configuration file.
--permit-no-files Jump to heading
Don't return an error code if no files were found.
Formatting options Jump to heading
--check Jump to heading
Check if the source files are formatted.
--ext Jump to heading
Set content type of the supplied file.
--ignore Jump to heading
Ignore formatting particular source files.
--indent-width Jump to heading
Define indentation width [default: 2]
--line-width Jump to heading
Define maximum line width [default: 80]
--no-semicolons Jump to heading
Don't use semicolons except where necessary [default: false]
--prose-wrap Jump to heading
Define how prose should be wrapped [default: always]
--single-quote Jump to heading
Use single quotes [default: false]
--unstable-component Jump to heading
Enable formatting Svelte, Vue, Astro and Angular files.
--unstable-sql Jump to heading
Enable formatting SQL files.
--use-tabs Jump to heading
Use tabs instead of spaces for indentation [default: false]
File watching options Jump to heading
--no-clear-screen Jump to heading
Do not clear terminal screen when under watch mode.
--watch Jump to heading
Watch for file changes and restart process automatically. Only local files from entry point module graph are watched.
--watch-exclude Jump to heading
Exclude provided files/patterns from watch mode.
Supported File Types Jump to heading
Deno ships with a built-in code formatter that will auto-format the following files:
| File Type | Extension | Notes |
|---|---|---|
| JavaScript | .js, .cjs, .mjs |
|
| TypeScript | .ts, .mts, .cts |
|
| JSX | .jsx |
|
| TSX | .tsx |
|
| Markdown | .md, .mkd, .mkdn, .mdwn, .mdown, .markdown |
|
| JSON | .json |
|
| JSONC | .jsonc |
|
| CSS | .css |
|
| HTML | .html |
|
| Nunjucks | .njk |
|
| Vento | .vto |
|
| YAML | .yml, .yaml |
|
| Sass | .sass |
|
| SCSS | .scss |
|
| LESS | .less |
|
| Jupyter Notebook | .ipynb |
|
| Astro | .astro |
Requires --unstable-component flag or "unstable": ["fmt-component"] config option. |
| Svelte | .svelte |
Requires --unstable-component flag or "unstable": ["fmt-component"] config option. |
| Vue | .vue |
Requires --unstable-component flag or "unstable": ["fmt-component"] config option. |
| SQL | .sql |
Requires --unstable-sql flag or "unstable": ["fmt-sql"] config option. |
deno fmt can format code snippets in Markdown files. Snippets must be
enclosed in triple backticks and have a language attribute.
Ignoring Code Jump to heading
JavaScript / TypeScript / JSONC Jump to heading
Ignore formatting code by preceding it with a // deno-fmt-ignore comment:
// deno-fmt-ignore
export const identity = [
1, 0, 0,
0, 1, 0,
0, 0, 1,
];
Or ignore an entire file by adding a // deno-fmt-ignore-file comment at the
top of the file.
Markdown / HTML / CSS Jump to heading
Ignore formatting next item by preceding it with <!--- deno-fmt-ignore -->
comment:
<html>
<body>
<p>
Hello there
<!-- deno-fmt-ignore -->
</p>
</body>
</html>
To ignore a section of code, surround the code with
<!-- deno-fmt-ignore-start --> and <!-- deno-fmt-ignore-end --> comments.
Or ignore an entire file by adding a <!-- deno-fmt-ignore-file --> comment at
the top of the file.
YAML Jump to heading
Ignore formatting next item by preceding it with # deno-fmt-ignore comment:
# deno-fmt-ignore aaaaaa: bbbbbbb
More about linting and formatting Jump to heading
For more information about linting and formating in Deno, and the differences between these two utilities, visit the Linting and Formatting page in our Fundamentals section.