Formatting
Markdoc comes with the ability to take a Markdoc abstract syntax tree (AST) and generate the source content. This is useful for generating Markdoc files from data, or prettifying documents.
Examples
Take for example you want to generate a Markdoc file from from some JSON:
// ./data.json [ [34.0522, -118.2437], [40.7128, -74.0060], [48.8566, 2.3522] ]
You can call Markdoc.format with an AST Node to generate the source content:
const Markdoc = require('@markdoc/markdoc')
const DATA = require('./data.json')
const list = new Markdoc.Ast.Node(
'list',
{ordered: false},
DATA.map(point => new Markdoc.Ast.Node(
'item',
{},
[
new Markdoc.Ast.Node('inline', {}, [
new Markdoc.Ast.Node(
'text',
{content: point.join(', ')},
[]
)
])
]
))
)
Markdoc.format(list)
- 34.0522, -118.2437 - 40.7128, -74.006 - 48.8566, 2.3522