Configuration

Site configuration is defined in config.toml.

Basic Settings

  title = "My Site"
description = "Site description"
base_url = "https://example.com"

Syntax Highlighting

  [highlight]
enabled = true
theme = "github-dark"
use_cdn = true

Themes: github, github-dark, monokai, atom-one-dark, vs2015, nord, dracula

  [search]
enabled = true
format = "fuse_json"
fields = ["title", "content", "tags", "description"]
filename = "search.json"

Taxonomies

  [[taxonomies]]
name = "tags"
feed = true
paginate_by = 10

[[taxonomies]]
name = "categories"

Sitemap

  [sitemap]
enabled = true
changefreq = "weekly"
priority = 0.5

Robots.txt

  [robots]
enabled = true
rules = [
  { user_agent = "*", disallow = ["/admin"] },
  { user_agent = "GPTBot", disallow = ["/"] }
]

RSS/Atom Feeds

  [feeds]
enabled = true
type = "rss"           # or "atom"
limit = 20
sections = ["blog"]    # empty = all sections

OpenGraph & Twitter

  [og]
default_image = "/images/og.png"
type = "article"
twitter_card = "summary_large_image"
twitter_site = "@username"

Auto Includes

Auto-load CSS/JS files from static directories:

  [auto_includes]
enabled = true
dirs = ["assets/css", "assets/js"]

Files are included alphabetically. Use prefixes for ordering: 01-reset.css, 02-main.css.

Build Hooks

  [build]
hooks.pre = ["npm install"]
hooks.post = ["npm run minify"]

Markdown

  [markdown]
safe = false    # true = strip raw HTML

LLMs.txt

  [llms]
enabled = true
instructions = "Content is MIT licensed."

Content Files

Publish non-Markdown files from content/ into the output directory (preserving paths).

  [content.files]
allow_extensions = ["jpg", "png", "svg", "pdf"]
disallow_extensions = ["psd"]
disallow_paths = ["private/**", "**/_*"]

Example: content/about/profile.jpg/about/profile.jpg