configuration
all site settings live in config.yaml at the project root.
paths
| key | type | description |
|---|---|---|
src |
string | source directory for markdown files (default: src) |
dest |
string | output directory for built site (default: dist) |
port |
number | dev server port (default: 8000) |
url |
string | base url for the site (used for canonical links, og images) |
site metadata
| key | type | description |
|---|---|---|
title |
string | site title shown in header and og images |
description |
string | default meta description |
lang |
string | html lang attribute (default: en) |
author |
string | default author for pages |
branding
| key | type | description |
|---|---|---|
logo |
string | path to logo image (optional) |
faviconText |
string | single character for generated favicon |
seo
| key | type | description |
|---|---|---|
robots |
string | robots meta directive (default: index, follow) |
github |
string | github username for profile image |
image |
string/object | default og image - "github", "twitter", { file: "path" }, or url |
opengraph
og:
type: website
locale: en_UStwitter cards
twitter:
card: summary_large_image
site: "@handle"
profile: "@handle"mermaid
mermaid:
useAscii: true # render as ascii art (vs svg)
paddingX: 5 # horizontal padding
paddingY: 5 # vertical padding
boxBorderPadding: 1 # padding inside boxesnavigation
navBar:
- about # links to /about
- projects # links to /projectsarray of page slugs to show in the header navigation.
example
config.yaml
src: src
dest: dist
port: 8000
url: "https://example.com"
title: "my site"
description: "a personal site"
lang: en
author: "your name"
faviconText: "m"
robots: "index, follow"
mermaid:
useAscii: true
navBar:
- about
- blogsee also:
- features - what pages can do
- markdown - content authoring
- deployment - github pages setup