diff options
Diffstat (limited to 'docs/runtime/loaders.md')
-rw-r--r-- | docs/runtime/loaders.md | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/docs/runtime/loaders.md b/docs/runtime/loaders.md new file mode 100644 index 000000000..c7977534c --- /dev/null +++ b/docs/runtime/loaders.md @@ -0,0 +1,28 @@ +A loader determines how to map imports & file extensions to transforms and output. + +Currently, Bun implements the following loaders: + +| Input | Loader | Output | +| ----- | ----------------------------- | ------ | +| .js | JSX + JavaScript | .js | +| .jsx | JSX + JavaScript | .js | +| .ts | TypeScript + JavaScript | .js | +| .tsx | TypeScript + JSX + JavaScript | .js | +| .mjs | JavaScript | .js | +| .cjs | JavaScript | .js | +| .mts | TypeScript | .js | +| .cts | TypeScript | .js | +| .toml | TOML | .js | +| .css | CSS | .css | +| .env | Env | N/A | +| .\* | file | string | + +Everything else is treated as `file`. `file` replaces the import with a URL (or a path). + +You can configure which loaders map to which extensions by passing `--loaders` to `bun`. For example: + +```sh +$ bun --loader=.js:js +``` + +This will disable JSX transforms for `.js` files. |