Files
bun.sh/packages/bun-plugin-yaml/README.md
Colin McDonnell a52715597a Add plugins for yaml & RSC (#2888)
* WIP

* WIP

* Add yaml plugin

* Publish v0.0.1

* Updates

* Start RSC plugin - not finished

* Add readme

* Updates

* Add shell dirs for a few other plugins
2023-05-15 20:37:03 -07:00

1.3 KiB

bun-plugin-yaml

The official YAML plugin for Bun. Adds support for .yml/.yaml imports.

Installation

bun add bun-plugin-yaml -d

Bundler usage

This plugin can be used to support .yaml loaders in Bun's bundler by passing it into the plugins array:

import yamlPlugin from "bun-plugin-yaml";

Bun.build({
  entrypoints: ["./index.tsx"],
  // other config

  plugins: [yamlPlugin()],
});

You can now import .yaml files from your source code:

import data from "./data.yaml";

export function Component() {
  return <div>{data.name}</div>;
}

The contents of the .yaml file will be inlined into your bundle.

Runtime usage

To use as a runtime plugin, create a file that registers the plugin:

// yaml.ts
import yamlPlugin from "bun-plugin-yaml";

Bun.plugin(yamlPlugin());

Then preload it in your bunfig.toml:

preload = ["./yaml.ts"]

TypeScript

By default VSCode/TypeScript will not recognize .yaml imports. To avoid import errors, add the following to your tsconfig.json:

  {
    "compilerOptions": {
      "types": [
        // other packages, e.g. "bun-types",
+       "bun-plugin-yaml"
      ]
    }
  }

Contributing

$ bun install # project setup
$ bun test # run tests