Configuration reference
Complete reference for config.toml. See configuration concept for the mental model and examples. The tables below are auto-generated from the Zorto source code.
Top-level settings
Top-level site configuration, loaded from `config.toml`.
| Field | Type | Default | Description |
|---|---|---|---|
base_url | string | required | Site base URL without trailing slash (e.g. `"https://example.com"`). |
title | string | "" | Site title, used in feeds, templates, and `llms.txt`. |
description | string | "" | Site description, used in feeds and `llms.txt`. |
default_language | string | "en" | Default language code (default: `"en"`). |
compile_sass | bool | true | Compile SCSS files from `sass/` directory (default: `true`). |
generate_feed | bool | false | Generate an Atom feed at `/atom.xml` (default: `false`). |
generate_sitemap | bool | true | Generate a sitemap at `/sitemap.xml` (default: `true`). |
generate_llms_txt | bool | true | Generate `llms.txt` and `llms-full.txt` (default: `true`). |
theme | string | null | Built-in theme name (e.g. `"zorto"`, `"dkdc"`, `"default"`). When set, the theme provides default templates and SCSS. Local `templates/` and `sass/` files override theme defaults. |
extra | table | {} | Arbitrary extra values accessible in templates as `config.extra`. |
generate_search | bool | false | Generate a SQLite FTS5 search index at `/search.db` (default: `false`). When enabled, a `search.db` file is generated at build time containing a full-text search index of all pages. The client-side uses sql.js (SQLite WASM) to query the database in the browser. |
generate_md_files | bool | false | Generate `.md` output files alongside HTML for every page (default: `false`). |
compile_all_themes | bool | false | Compile CSS for all available themes as `style-{name}.css` (default: `false`). When enabled, every built-in theme's SCSS is compiled in addition to the active theme's `style.css`. Useful for theme preview/switcher pages. |
cache | cacheconfig | "" | Code block execution cache configuration. |
execute | executeconfig | "" | Code block execution configuration (timeouts, etc.). |
[markdown]
Configuration for the Markdown rendering pipeline.
| Field | Type | Default | Description |
|---|---|---|---|
highlight_code | bool | true | Enable syntax highlighting for fenced code blocks (default: `true`). |
insert_anchor_links | string | "none" | Insert anchor links on headings. |
highlight_theme | string | null | Syntect theme name (default: `"base16-ocean.dark"`). |
external_links_target_blank | bool | false | Open external links in a new tab. |
external_links_no_follow | bool | false | Add `rel="nofollow"` to external links. |
external_links_no_referrer | bool | false | Add `rel="noreferrer"` to external links. |
smart_punctuation | bool | false | Enable smart punctuation (curly quotes, em dashes, etc.). |
[[taxonomies]]
A taxonomy definition from `[[taxonomies]]` in `config.toml`.
| Field | Type | Default | Description |
|---|---|---|---|
name | string | required | Taxonomy name (e.g. `"tags"`, `"categories"`). |
[[content_dirs]]
Configuration for loading an external directory of plain markdown as content.
| Field | Type | Default | Description |
|---|---|---|---|
path | string | required | Path to the external directory (relative to site root). |
url_prefix | string | required | URL prefix for generated pages (e.g. `"docs"` → `/docs/...`). |
template | string | "page.html" | Template for generated pages (default: `"page.html"`). |
section_template | string | "section.html" | Template for generated sections (default: `"section.html"`). |
sort_by | string | null | Sort order for pages within generated sections. |
rewrite_links | bool | false | Rewrite relative `.md` links in content to clean URL paths. |
exclude | string[] | [] | Files to exclude (relative to the external directory, e.g. `"reference/cli.md"`). Excluded files are expected to exist as manual content in `content/`. |
Section frontmatter #
Used in _index.md files:
| Field | Type | Default | Description |
|---|---|---|---|
title | string | "" | Section title |
description | string | "" | Section description |
sort_by | string | "date" | Sort pages by: "date", "title" |
paginate_by | int | 0 | Pages per pagination page (0 = no pagination) |
template | string | "section.html" | Custom template for this section |
[extra] | table | {} | Custom data for templates |
Page frontmatter #
Used in regular .md files:
| Field | Type | Default | Description |
|---|---|---|---|
title | string | "" | Page title |
date | string | "" | Publication date (YYYY-MM-DD) |
author | string | "" | Author name |
description | string | "" | Page description for SEO |
draft | bool | false | Exclude from production builds |
slug | string | filename | Override the URL slug |
template | string | "page.html" | Custom template |
aliases | array of strings | [] | Redirect old URLs to this page |
sort_by | string | "date" | Sort child pages by: "date", "title" |
paginate_by | int | 0 | Pages per pagination page (0 = no pagination) |
| taxonomy fields | array of strings | [] | Taxonomy values as top-level arrays (e.g. tags = ["rust"]) |
[extra] | table | {} | Custom data for templates |