On this page
@std/front-matter
Overview Jump to heading
Extracts front matter from strings. Adapted from jxson/front-matter.
Supported formats
JSON
import { test, extractJson } from "@std/front-matter";
import { assertEquals } from "@std/assert";
const str = "---json\n{\"and\": \"this\"}\n---\ndeno is awesome";
assertEquals(test(str), true);
assertEquals(extractJson(str), {
frontMatter: "{\"and\": \"this\"}",
body: "deno is awesome",
attrs: { and: "this" }
});
extract and test support the following
delimiters.
---json
{
"and": "this"
}
---
{
"is": "JSON"
}
TOML
import { test, extractToml } from "@std/front-matter";
import { assertEquals } from "@std/assert";
const str = "---toml\nmodule = 'front_matter'\n---\ndeno is awesome";
assertEquals(test(str), true);
assertEquals(extractToml(str), {
frontMatter: "module = 'front_matter'",
body: "deno is awesome",
attrs: { module: "front_matter" }
});
extract and test support the following
delimiters.
---toml
this = 'is'
---
= toml =
parsed = 'as'
toml = 'data'
= toml =
+++
is = 'that'
not = 'cool?'
+++
YAML
import { test, extractYaml } from "@std/front-matter";
import { assertEquals } from "@std/assert";
const str = "---yaml\nmodule: front_matter\n---\ndeno is awesome";
assertEquals(test(str), true);
assertEquals(extractYaml(str), {
frontMatter: "module: front_matter",
body: "deno is awesome",
attrs: { module: "front_matter" }
});
extract and test support the following
delimiters.
---
these: are
---
---yaml
all: recognized
---
= yaml =
as: yaml
= yaml =
Add to your project Jump to heading
deno add jsr:@std/front-matter