Frontmatter is a common format to attach additional metadata (data about data) to markdown documents. Many tools support it as a markdown Markdown/Extensions|extension.
In SilverBullet, there are multiple ways to attach Metadata to a page; frontmatter is the most popular one.
You create frontmatter by starting your markdown document with ---
followed by YAML encoded attributes and then ending with ---
again. Followed by the regular body of your document. This very page contains some frontmatter, click on it to see the underlying code.
Here is another example:
---
status: Draft
tags:
- tag1
- tag2
seeAlso: "[YAML](YAML)"
---
## This is a section
This is content
For convenience, you may use the attribute.subAttribute
notation, which internally will expand:
attribute.subAttribute: 10
to
attribute:
subAttribute: 10
While SilverBullet allows arbitrary metadata to be added to pages, there are a few attributes with special meaning:
name
(==DISALLOWED==): is an attribute used for page names, you should not set it.displayName
(string
): very similar in effect as aliases
but will use this name for the page in certain contexts.aliases
(array of strings
): allow you to specify a list of alternative names for this page, which can be used to navigate or link to this pagetags
(array of strings
or string
): an alternative (and perhaps preferred) way to assign Tags to a page. There are various ways to define these, take your pick:
```yaml
tags: tag1, tag2 # with commas
tags: tag1 tag2 # with spaces
tags: "#tag1 #tag2" # with pound signs and quotes (you get completion)
tags: # as a list
For specific use cases, like ^Library/Std/Infrastructure/Page Templates or ^Library/Std/Infrastructure/Slash Templates, frontmatter may have specific meaning.