Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/jarle-bun-loaders
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/bun-loaders
What's inside
- Skill name
Bun Loaders- Description
- Built-in loaders for the Bun bundler and runtime
- License
- MIT
- Instructions
- 439 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- name: only lowercase letters, digits and single hyphens allowed
- name: "Bun Loaders" does not match folder "bun-bundler-loaders"
Files (1)
- SKILL.md
SKILL.md (first lines)
# Loaders
> Built-in loaders for the Bun bundler and runtime
The Bun bundler implements a set of default loaders out of the box.
> As a rule of thumb: **the bundler and the runtime both support the same set of file types out of the box.**
`.js` `.cjs` `.mjs` `.mts` `.cts` `.ts` `.tsx` `.jsx` `.css` `.json` `.jsonc` `.toml` `.yaml` `.yml` `.txt` `.wasm` `.node` `.html` `.sh`
Bun uses the file extension to determine which built-in loader should be used to parse the file. Every loader has a name, such as `js`, `tsx`, or `json`. These names are used when building plugins that extend Bun with custom loaders.
You can explicitly specify which loader to use using the `'type'` import attribute.
```ts title="index.ts" icon="https://mintcdn.com/bun-1dd33a4e/nIz6GtMH5K-dfXeV/icons/typescript.svg?fit=max&auto=format&n=nIz6GtMH5K-dfXeV&q=85&s=5d73d76daf7eb7b158469d8c30d349b0" theme={"theme":{"light":"github-light","dark":"dracula"}}
import my_toml from "./my_file" with { type: "toml" };
// or with dynamic imports
const { default: my_toml } = await import("./my_file", { with: { type: "toml" } });
```
## Built-in loaders
### `js`
**JavaScript loader.** Default for `.cjs` and `.mjs`.
Parses the code and applies a set of default transforms like dead-code elimination and tree shaking. Note that Bun does not attempt to down-convert syntax at the moment.
***
### `jsx`
**JavaScript + JSX loader.** Default for `.js` and `.jsx`.
Same as the `js` loader, but JSX syntax is supported. By default, JSX is down-converted to plain JavaScript; the details of how this is done depends on the `jsx*` compiler options in your `tsconfig.json`. Refer to the [TypeScript documentation on JSX](https://www.typescriptlang.org/tsconfig#jsx) for more information.
***
### `ts`
**TypeScript loader.** Default for `.ts`, `.mts`, and `.cts`.
Strips out all TypeScript syntax, then behaves identically to the `js` loader. Bun does not perform typechecking.
***
### `tsx`
**TypeScript + JSX loader.** Default for `.tsx`.
Transpiles both TypeScript and JSX to vanilla JavaScript.
***
### `json`
**JSON loader.** Default for `.json`.
JSON files can be directly imported.
```js theme={"theme":{"light":"github-light","dark":"dracula"}}
import pkg from "./package.json";
pkg.name; // => "my-package"
```
During bundling, the parsed JSON is inlined into the bundle as a JavaScript object.
```js theme={"theme":{"light":"github-light","dark":"dracula"}}
const pkg = {
name: "my-package",
// ... other fields
};
pkg.name;
```
If a `.json` file is passed as an entrypoint to the bundler, it will be converted to a `.js` module that `export default`s the parsed object.
<CodeGroup>
```json Input theme={"theme":{"light":"github-light","dark":"dracula"}}
{
"name": "John Doe",
"age": 35,
"email": "johndoe@example.com"
}
```
```js Output theme={"theme":{"light":"github-light","dark":"dracula"}}
export default {
name: "John Doe",
age: 35,
email: "johndoe@example.com",
};
```
</CodeGroup>
***
### `jsonc`
**JSON with Comments loader.** Default for `.jsonc`.
JSONC (JSON with Comments) files can be directly imported. Bun will parse them, stripping out comments and trailing commas.
```js theme={"theme":{"light":"github-light","dark":"dracula"}}
import config from "./config.jsonc";
console.log(config);
```
During bundling, the parsed JSONC is inlined into the bundle as a JavaScript object, identical to the `json` loader.
```js theme={"theme":{"light":"github-light","dark":"dracula"}}
var config = {
option: "value",
};
```
<Note>
Bun automatically uses the `jsonc` loader for `tsconfig.json`, `jsconfig.json`, `package.json`, and `bun.lock` files.From jarle/bun-skills, MIT.
More from jarle/bun-skills
- 0.459score
Bun HTML & static sites
jarle
Build static sites, landing pages, and web applications with Bun's bundler
SkillDFreshness: D★ 9Claude Code +9 - 0.459score
Bun Plugins
jarle
Universal plugin API for extending Bun's runtime and bundler
SkillDFreshness: D★ 9Claude Code +9 - 0.459score
Bun Bytecode Caching
jarle
Speed up JavaScript execution with bytecode caching in Bun's bundler
SkillDFreshness: D★ 9Claude Code +9 - 0.459score
Bun Standalone HTML
jarle
Bundle a single-page app into a single self-contained .html file with no external dependencies
SkillDFreshness: D★ 9Claude Code +9 - 0.456score
Bun Convert an ArrayBuffer to a Uint8Array
jarle
Convert an ArrayBuffer to a Uint8Array
SkillDFreshness: D★ 9Claude Code +9 - 0.456score
Bun Feedback
jarle
Share feedback, bug reports, and feature requests
SkillDFreshness: D★ 9Claude Code +9 - 0.456score
Bun Hot reloading
jarle
Hot Module Replacement (HMR) for Bun's development server
SkillDFreshness: D★ 9Claude Code +9 - 0.456score
Bun Convert an ArrayBuffer to an array of numbers
jarle
Convert an ArrayBuffer to an array of numbers
SkillDFreshness: D★ 9Claude Code +9 - 0.456score
Bun esbuild
jarle
Migration guide from esbuild to Bun's bundler
SkillDFreshness: D★ 9Claude Code +9 - 0.456score
Bun Macros
jarle
Run JavaScript functions at bundle-time with Bun macros
SkillDFreshness: D★ 9Claude Code +9 - 0.456score
Bun Convert an ArrayBuffer to a Blob
jarle
Convert an ArrayBuffer to a Blob
SkillDFreshness: D★ 9Claude Code +9 - 0.456score
Bun Convert an ArrayBuffer to a Buffer
jarle
Convert an ArrayBuffer to a Buffer
SkillDFreshness: D★ 9Claude Code +9
Signals
- Stars
- 9
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Feb 21, 2026 (8 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/jarle/bun-skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from jarle
- 0.559score
service-components
jarle
How to design application services with the Service Component pattern.
SkillBFreshness: B★ 3Claude Code +9 - 0.553score
service-component-testing
jarle
How to write tests for services built with Service Components.
SkillBFreshness: B★ 3Claude Code +9 - 0.459score
Bun Plugins
jarle
Universal plugin API for extending Bun's runtime and bundler
SkillDFreshness: D★ 9Claude Code +9 - 0.459score
Bun HTML & static sites
jarle
Build static sites, landing pages, and web applications with Bun's bundler
SkillDFreshness: D★ 9Claude Code +9 - 0.459score
Bun Bytecode Caching
jarle
Speed up JavaScript execution with bytecode caching in Bun's bundler
SkillDFreshness: D★ 9Claude Code +9 - 0.459score
Bun Standalone HTML
jarle
Bundle a single-page app into a single self-contained .html file with no external dependencies
SkillDFreshness: D★ 9Claude Code +9
Cite this page
Bun Loaders skill. Agent Mart. https://agentmart.dev/skills/jarle-bun-loaders (last updated 2026-10-24)