Parse SDK

YAML

Parse and stringify YAML with datamark's built-in helpers.

datamark uses the yaml package internally for frontmatter handling. These helpers are exposed for cases where you need them standalone.

import { parseYaml, stringifyYaml, YamlParseError } from "datamark/parse";

const parsed = parseYaml("title: Hello\ntags:\n  - a\n  - b");

const stringified = stringifyYaml({ title: "Hello", tags: ["a", "b"] });

const nestedParsed = parseYaml(`meta:
  author: Ada
  date: 2026-06-01`);

parseYaml()

import { parseYaml } from "datamark/parse";

const data = parseYaml("title: Hello\ntags:\n  - a\n  - b");
// { title: "Hello", tags: ["a", "b"] }

stringifyYaml()

import { stringifyYaml } from "datamark/stringify";

const yaml = stringifyYaml({ title: "Hello", tags: ["a", "b"] });
// "title: Hello\ntags:\n  - a\n  - b\n"

YamlParseError

Invalid YAML throws YamlParseError:

import { YamlParseError } from "datamark/parse";

try {
  parseYaml("not: [valid yaml");
} catch (err) {
  if (err instanceof YamlParseError) {
    console.error(err.message);
  }
}

You usually don't need these directly. parse() handles YAML parsing automatically.

On this page