Frontmatter is the metadata in pages. It is an essential "API" between content authors and the theme designers. Here you can find the frontmatter definitions for main category of pages.
This frontmatter is common to all pages and maybe used in any of them. Every page MUST have a title. All other values are optional.
---
title: # the title of the page
description: # short description / summary / excerpt
tagline: # one sentence summary
image: /data-package-diagram.png
layout: product | job [| blog]
---
layout
: You only need to set layout if you need a custom layout. Default pages don't need it, nor does the blog section (layout for blog pages is set automatically by the blog plugin)image
: only needed if you have a primary image for this page that is going to be used elsewhere. For example, for the blog, this is the featured image that is used on the blog listing page.description
: you can set this explicitly in the frontmatter OR you have this automatically generated by using the<!-- more -->
tag as per https://v1.vuepress.vuejs.org/theme/writing-a-theme.html#content-excerpt- If set, the description will be used to set the meta description tag.
tagline
: this is rarely used as you have title and description. TODO: specify which page types use this.
Our convention is that page titles are set in frontmatter not in markdown. This allows them to be styled different etc.
✅
---
title: My Page
---
This page is about X ...
❌
# My Page
This page is about X
---
category: case-studies | grantee-profiles | pilots | grantee-profiles-2019
date: # date of publication in yyyy-mm-dd format
author:
tags: ["pilots", "case-studies"]
---
Author can be for single or multiple authors. A single author is a single value:
author: Rufus Pollock
Multipe authors is an array of values:
author:
- Rufus Pollock
- Lilly Winfree
When category == "case-studies" | "pilots"
interviewee:
subject_context:
When category == "grantee-profiles"
github:
twitter:
website:
tagline:
pain:
context: (?)
hexagon:
hexagon:
github: # list of github repos ...