Skip to content
v0.6.5

Build artifacts

canofold build writes .canofold/dist by default. A full build writes to a temporary directory and atomically replaces the existing output only after success, so a failed build preserves the last successful site.

      • index.html
      • 404.html
        • canofold.css
          • {locale}.json
        • manifest.json
              • *.jsonl
      • llms.txt
      • llms-full.txt
      • sitemap.xml
      • robots.txt
      • redirects.json
          • index.html
          • index.md

Every built page has static HTML; adjacent Markdown source is emitted by default and can be disabled with markdownMirror: false. Native DOM owns basic interactions. React loads on demand for sortable tables, image previews, and galleries, while diagram clients are loaded by their plugins. KaTeX CSS and fonts are emitted only when the math plugin is enabled and a page contains math.

table
Page index.htmlAlwaysStatic page containing the complete rendered body
Page index.mdmarkdownMirror enabledMarkdown or MDX source used by the build after source extensions run
assets/canofold.cssAlwaysSite shell, semantic tokens, and configured styles
assets/canofold-markdown/*A page needs browser behavior and no Demo engine is configuredBuilt-in native enhancer and lazy rich interactions
assets/canofold-demos/*A Demo engine is configuredShared Vite graph for the native enhancer, component Demos, their chunks, and imported CSS
assets/fonts/*The math plugin is enabled and at least one page contains mathComplete KaTeX WOFF2 font set
search/*The default compact provider is enabledVersion- and locale-scoped single-file indexes
pagefind/*pagefind() is configuredChunked locale/version-aware index
robots.txtAlwaysSearch crawler policy
sitemap.xmlsiteUrl is configuredAbsolute public URL list
redirects.jsonRedirects are configuredHosting-platform redirect manifest
ai/pages.jsonai.pageIndex enabledBasic AI page index scoped by ai.versions
ai/manifest.json, ai/content/*ai.fullContent enabledVersioned and bounded AI corpus shards
Other ai/*, llms*.txtCorresponding AI option is enabledOptional AI and retrieval formats

The built-in compact provider writes search/; the optional Pagefind plugin writes pagefind/ instead. robots.txt is always generated. sitemap.xml requires siteUrl; search indexes, redirects, Markdown mirrors, AI files, and llms*.txt follow their corresponding configuration.

robots.txt writes Allow: / by default. With seo: { robots: 'disallow' }, it writes Disallow: / and omits the Sitemap declaration. This file only expresses crawler preference; private sites still need hosting-level protection for every artifact.

Each build also writes .canofold/cache/build-report.json outside the deployable directory. It records page, locale and version counts; build mode, cache hit, changed pages and duration; each built-in output's enabled state, planned and actual paths, file count, bytes and missing paths; additional outputs; and paths removed since the previous valid build. removalBaseline: false means there was no previous manifest to compare. The report contains no document bodies and is not deployed as a public page.