Site Settings

Vara reads its configuration from your project's data/site.yaml. The theme's defaults live in its own data/site_default.js; your file only needs to override what you care about.

When a template asks for a value, it checks data.site first and falls back to the theme default. Empty strings are treated as unset, so "" falls through to the default; false, 0, and empty collections are kept.

Core settings

SettingDefaultDescription
title""The site title. Used in the document title, header branding, and social metadata.
description""Default meta description, used when a page has none.
site_url""The public base URL. Used for canonical and Open Graph URLs, the sitemap, and the absolute links in LLM output.
faviconVaravel avatarThe site favicon.
logo_lightVaravel logoThe brand logo for light surfaces.
logo_darkVaravel logoThe brand logo for dark surfaces.

A minimal data/site.yaml:

title: "Acme"
description: "Documentation and landing page for Acme."
site_url: "https://acme.example.com"
favicon: "/favicon.svg"
logo_light: "/images/logo-dark.svg"
logo_dark: "/images/logo-light.svg"

site_url

Set this to the deployed origin (for example https://acme.example.com). Vara uses it only where an absolute URL is required - canonical tags, Open Graph, the sitemap, and LLM output. Navigation links stay relative so local previews keep working.

If site_url is missing or invalid, Vara falls back to root-relative URLs.

The not-found page

SettingDefaultDescription
not_found_linksone link: Go home/Ordered links on the 404 page. Each entry needs title and href, and may have icon and new_tab. The first valid link is the primary action; the rest are secondary.
not_found_links:
  - title: "Go home"
    href: "/"
    icon: "house"
  - title: "Read the docs"
    href: "/docs/"
    icon: "book-open-text"
  - title: "View the source"
    href: "https://github.com/example/project"
    icon: "github"
    new_tab: true

Documentation settings

Documentation settings are namespaced with docs_. They only affect the vara-docs template.

Branding

SettingDefaultDescription
docs_faviconsite faviconFavicon used on documentation pages.
docs_logo_lightsite logo_lightBrand logo for light surfaces on documentation pages.
docs_logo_darksite logo_darkBrand logo for dark surfaces on documentation pages.
docs_show_logotrueShow the brand logo in the docs header.
docs_show_titletrueShow the site title next to the logo in the docs header.

Set docs_show_logo: false when your documentation site has no logo, or docs_show_title: false when the logo artwork already includes the title. Setting both hides the brand link from the docs header.

Header and GitHub

SettingDefaultDescription
docs_github_repo""Repository in owner/name format. When set, the docs header shows a GitHub button with star count fetched at build time.
docs_header_links[]Ordered links shown in the desktop header and the mobile navigation drawer. Each entry needs title and href, with optional new_tab and icon.
docs_github_repo: "acme/project"

docs_header_links:
  - title: "Blog"
    href: "/blog/"
  - title: "GitHub"
    href: "https://github.com/acme/project"
    new_tab: true
    icon: "github"

Sidebar

SettingDefaultDescription
docs_sidebar_sections[]Creates or extends sidebar sections. Sections merge with the generated ones by stable id; links with matching href values are merged instead of duplicated.
docs_sidebar_collapsedfalseCollapse sidebar groups by default. The visitor's open/closed state is remembered.

The sidebar is built from your documentation pages. The first segment of each permalink below the docs root becomes a section, and pages two levels deep become links within it.

docs_sidebar_sections:
  - id: "guide"
    title: "Guide"
    icon: "book-open-text"
    weight: 10
    links:
      - title: "Introduction"
        href: "/docs/guide/introduction/"
      - title: "Contributing"
        href: "/docs/guide/contributing/"

The stable id is the first permalink segment below the docs root. Use it to reorder a generated section or to attach extra links to it.

Search and LLM output

SettingDefaultDescription
docs_searchtrueEnable client-side documentation search.
docs_search_index_permalink/docs/vara-docs-search-index.jsonThe route of the search index. Your generator must create that route with the vara-docs-search-index template.
docs_llmstrueEnable the "Agents" sidebar section and the Markdown actions menu on documentation pages.
docs_llms_indextruePrepend a hierarchical index to each vara-docs-raw page.

See Search and LLM output for how these features work together.

Content

SettingDefaultDescription
docs_credits_footertrueShow the "Built with veta and veta-theme-vara" line below the documentation content.
docs_root_permalink/docs/The logical root of the documentation tree. It may be nested or /. Deployment prefixes belong in site_url.
docs_shikitrueEnable client-side syntax highlighting with the fixed github-light and github-dark themes.
docs_shiki_custom_languagesone: vdlExtra languages for syntax highlighting. Each entry requires an exact id and a CORS-accessible TextMate grammar url.
docs_shiki_custom_languages:
  - id: "toml"
    url: "https://cdn.example.com/toml.tmLanguage.json"

The custom language id must match the code fence language you use in Markdown:

```toml
theme:
  source: "varavelio/veta-theme-vara"
```