node-yaml

A wrapper for js-yaml parser

Usage no npm install needed!

<script type="module">
  import nodeYaml from 'https://cdn.skypack.dev/node-yaml';
</script>

README

Node YAML

A wrapper for js-yaml parser

dependencies Status devDependencies Status Build Status Code Coverage

This documentation is actual for next major version of the library. If you want the documentation of current stable version, please check out the 3.x branch.

Installation

You can install this module from Yarn:

yarn add node-yaml js-yaml

Or using NPM:

npm install node-yaml js-yaml

Usage

  1. Let's read some file from given path using node-yaml:
import {read} from "node-yaml"

read("path/to/file.yaml")
  .then(res => console.log("File content:\n\n%s", JSON.stringify(res, null, 2)))
  .catch(err => console.error("Error while reading file:\n\n%s", String(err)))
  1. Both read and readSync methods allows to omit file extension:
import {readSync} from "node-yaml"

// Will read the content from given path, but also resolve file extension
// Note that if you have 2 files with the same name,
// the first matched will be read.
readSync("path/to/file")

API

yaml.read(filename[, options]) -> {Promise<object>}

Read and parse YAML file from given path. Takes following arguments:

  • {string | number} filename – path to file or a file descriptor. Path can omit the file extension.
  • {object} {options = undefined} – reading options
    • {string} [options.encoding = "utf8"] – an encoding used to read the file
    • more options you can find in js-yaml docs in safeLoad section
yaml.readSync(filename[, options]) -> {object}

Synchronous version of yaml.read

yaml.write(filename, object[, options]) -> {Promise<void>}

Write given YAML content to disk. Takes following arguments:

  • {string | number} filename – path to file or a file descriptor. Path can omit the file extension.
  • {object} object – a content to write to the file
  • {object} {options = undefined} – writing options
    • {string} [options.encoding = "utf8"] – an encoding used to write to the file
    • more options you can find in js-yaml docs in safeDump section
yaml.writeSync(filename, object[, options]) -> {void}

Synchronous version of yaml.write