Coming from Hugo, Jekyll, or Gatsby? This track shows you how to migrate content, adapt frontmatter, and preserve your URLs.

Tip

Duration: ~60 min | Prerequisite: Existing static site to migrate

1

Key Capabilities

What Bengal does

Key Capabilities

Bengal is a static site generator that produces HTML, CSS, and JavaScript from Markdown content and Kida templates.

What Bengal Does

Content & Authoring

  • MyST Markdown — Directives, admonitions, cross-references, tabs, cards
  • 50+ Built-in Directives — Code tabs, dropdowns, galleries, video embeds, versioning badges
  • Content Collections — Type-safe frontmatter validation with dataclass or Pydantic schemas
  • Mixed Content Types — Docs, blog, landing pages, changelogs in one site

Performance

  • Kida Templates — 1.81x faster than Jinja2 under concurrent workloads
  • Incremental Builds — 35-80ms rebuilds for single-page edits
  • Free-Threading — True parallelism on Python 3.14+ (no GIL contention)
  • Parallel Rendering — 2-4x speedup on multi-core systems

Developer Experience

  • Auto-generated API Docs — From Python source, CLI tools, and OpenAPI specs
  • Image Processing — Resize, crop, format conversion (WebP/AVIF), srcset generation
  • Zero-Config Deploy — Auto-detects GitHub Pages, Netlify, Vercel
  • Theme System — Install themes from PyPI, swizzle templates, 1,100+ CSS tokens

Quality & Validation

  • Health Checks — Broken links, missing images, frontmatter validation
  • Auto-Fixbengal fixrepairs common issues automatically
  • Site Analysis — Graph visualization, orphan detection, content metrics

Technical Details

Feature Description
Language Python 3.14+
Templates Kida (Jinja2-compatible, 1.81x faster concurrent)
Markdown Patitas (typed AST, O(n) parsing, thread-safe)
Highlighting Rosettes (up to 3.75x faster than Pygments, 55+ languages)
Content Types Docs, blog, pages, changelog (mixed)
Incremental Builds Yes (35-80ms single-page, cache-validated)
Free-Threading (GIL=0) Yes (Kida, Patitas, Rosettes are all GIL-independent)
Image Processing fill, fit, resize, WebP/AVIF, srcset
Content Collections Dataclass and Pydantic schema validation
Deploy Detection GitHub Pages, Netlify, Vercel (zero-config)

Seealso

2

Migration Guides

Migrate to Bengal from other static site generators

Migration Guides

Step-by-step guides to migrate your site from another static site generator to Bengal.

Migration Overview

All migrations follow similar patterns, regardless of your source platform:

Common Migration Steps

  1. Install Bengal:pip install bengal or uv add bengal
  2. Create new site:bengal new site mysite
  3. Copy content: Transfer your markdown files tocontent/
  4. Convert syntax: Replace platform-specific syntax with Bengal directives
  5. Update configuration: Convert config files tobengal.toml
  6. Test and verify: Runbengal build and bengal health linkcheck

Universal Conversions

Most platforms use similar concepts that map to Bengal directives:

Source Syntax Bengal Directive Common Use Case
Shortcodes/Components :::{directive} Callouts, tabs, cards
Code highlighting ```lang Code blocks
Includes :::{include} Reusable content
Frontmatter YAML frontmatter Page metadata

What Stays the Same

  • Markdown files: Your content files transfer directly
  • YAML frontmatter: Frontmatter format is compatible
  • Directory structure:content/structure works similarly
  • Static output: All generators produce static HTML

What Changes

  • Template syntax: Each platform's template language → Jinja2
  • Component syntax: Platform-specific components → Bengal directives
  • Configuration: Platform config →bengal.toml
  • Build process: Platform CLI →bengal build

Tip

Not sure which guide to follow? Choose the guide for your current platform. If you're migrating from multiple platforms or a custom setup, start with the guide closest to your syntax (e.g., Hugo for shortcodes, Docusaurus for MDX components).

Common Issues

Template variables not working?

  • Check the template variable mapping in your platform's guide
  • Hugo users:{{ .Params.x }}{{ page.metadata.x }}
  • Jekyll users:{{ page.custom }}{{ page.metadata.custom }}

Directives not rendering?

  • Ensure you're using triple colons::::{note} not :::note
  • Check that directive names match exactly (case-sensitive)
  • See the Directives Reference for all available directives

Configuration errors?

  • Verifybengal.tomlsyntax (TOML format)
  • Check that all required[site]fields are present
  • See the Configuration Reference for details

Links broken after migration?

  • Runbengal health linkcheckto find broken links
  • Update relative paths if directory structure changed
  • Check that asset paths use/assets/prefix

Platform-Specific Guides

3

From Hugo

Onboarding guide for Hugo users migrating to Bengal

Bengal for Hugo Users

Bengal's content model matches Hugo's. The main difference: shortcodes become directives.

Quick Wins (5 Minutes)

What Works The Same

Hugo Bengal Status
content/structure content/ ✅ Identical
_index.mdfor sections _index.md ✅ Identical
YAML/TOML frontmatter YAML frontmatter ✅ Identical
{{ .Params.x }} {{ page.metadata.x }} ✅ Similar
{{ .Site.Title }} Bengal ✅ Similar
config.toml bengal.toml ✅ Similar

The Key Difference

Hugo shortcodes → Bengal directives:

<!-- Hugo -->
{{</* notice warning */>}}
This is a warning
{{</* /notice */>}}

<!-- Bengal -->
:::{warning}
This is a warning
:::

Shortcode → Directive Translation

Callout Boxes

{{</* notice note */>}}
This is a note with **bold** text.
{{</* /notice */>}}

{{</* notice warning */>}}
Be careful!
{{</* /notice */>}}

{{</* notice tip */>}}
Pro tip here.
{{</* /notice */>}}
:::{note}
This is a note with **bold** text.
:::

:::{warning}
Be careful!
:::

:::{tip}
Pro tip here.
:::

Tabs

{{</* tabs */>}}
{{</* tab "Python" */>}}
```python
print("Hello")
```
{{</* /tab */>}}
{{</* tab "JavaScript" */>}}
```javascript
console.log("Hello");
```
{{</* /tab */>}}
{{</* /tabs */>}}
:::{tab-set}
:::{tab} Python
```python
print("Hello")
```
:::{/tab}
:::{tab} JavaScript
```javascript
console.log("Hello");
```
:::{/tab}
:::{/tab-set}

Code Highlighting

{{</* highlight python "linenos=table,hl_lines=2" */>}}
def hello():
    print("Hello!")  # highlighted
    return True
{{</* /highlight */>}}
```python
def hello():
    print("Hello!")  # use comments to draw attention
    return True
```

Figure / Image

{{</* figure src="/static/images/photo.jpg" title="My Photo" caption="A description" */>}}
:::{figure} /images/photo.jpg
:alt: My Photo
:caption: A description
:align: center
:::

Tip

Bengal's{figure} directive outputs semantic HTML (<figure> + <figcaption>) with accessibility support. The :alt: option is required. Use an empty :alt:value for decorative images.

YouTube Embed

{{</* youtube dQw4w9WgXcQ */>}}
:::{youtube} dQw4w9WgXcQ
:title: Video Title (required for accessibility)
:::

Tip

Bengal's{youtube} directive uses privacy-enhanced mode (youtube-nocookie.com) by default for GDPR compliance.

All Media Embed Directives

Bengal includes built-in directives for common media embeds:

Hugo Shortcode Bengal Directive Notes
{{ }} :::{youtube} id Privacy-enhanced by default
{{ }} :::{youtube} id
:autoplay: true
Options as directive options
{{ }} :::{vimeo} id
:title: Title
DNT mode by default
{{ }} :::{gist} user/id Combined user/id format
{{ }} :::{gist} user/id
:file: file.py
File as option
{{ }} :::{figure} path
:alt: Alt text
Semantic HTML output
{{ }} :::{figure} path
:caption: ...
Caption as option
N/A :::{video} /path.mp4 Self-hosted video
N/A :::{audio} /path.mp3 Self-hosted audio
N/A :::{codepen} user/pen CodePen embeds
N/A :::{codesandbox} id CodeSandbox embeds
N/A :::{stackblitz} id StackBlitz embeds
N/A :::{asciinema} id Terminal recordings

Note: All iframe-based directives require:title:for accessibility.


Template Variable Mapping

Page Variables

Hugo Bengal Notes
{{ .Title }} From Hugo Page title
{{ .Content }} {{ content }} Rendered content
{{ .Date }} {{ page.date }} Publication date
{{ .Params.x }} {{ page.metadata.x }} Custom frontmatter
{{ .Summary }} <p>Bengal's content model matches Hugo's. The main difference: shortcodes become directives.</p> <h2 id="quick-wins-5-minutes">Quick Wins (5 Minutes)</h2> <h3 id="what-works-the-same">What Works The Same</h3> <div class="table-wrapper"><table> <thead> <tr> <th>Hugo</th> <th>Bengal</th> <th>Status</th> </tr> </thead> <tbody> <tr> <td><code>content/</code> structure</td> <td><code>content/</code></td> <td>✅ Identical...</td> </tr> </tbody> </table></div> Auto-generated
{{ .WordCount }} 2200 Word count
{{ .ReadingTime }} 11 Minutes to read
{{ .Permalink }} /bengal/docs/tutorials/migration/from-hugo/ URL with baseurl
{{ .RelPermalink }} {{ page._path }} Site-relative path

Site Variables

Hugo Bengal Notes
{{ .Site.Title }} Bengal Site title
{{ .Site.BaseURL }} /bengal Base URL
{{ .Site.Params.x }} {{ site.config.params.x }} Custom params
{{ .Site.Pages }} [Page(title='Bengal', source='/home/runner/work/bengal/bengal/site/content/_index.md'), Page(title='Authors', source='/home/runner/work/bengal/bengal/site/content/authors/_index.md'), Page(title='Lawrence Lane', source='/home/runner/work/bengal/bengal/site/content/authors/lbliii.md'), Page(title='Core Concepts', source='/home/runner/work/bengal/bengal/site/content/docs/about/concepts/_index.md'), Page(title='About', source='/home/runner/work/bengal/bengal/site/content/docs/about/_index.md'), Page(title='Performance Benchmarks', source='/home/runner/work/bengal/bengal/site/content/docs/about/benchmarks.md'), Page(title='Key Capabilities', source='/home/runner/work/bengal/bengal/site/content/docs/about/comparison.md'), Page(title='The Bengal Ecosystem', source='/home/runner/work/bengal/bengal/site/content/docs/about/ecosystem.md'), Page(title='Frequently Asked Questions', source='/home/runner/work/bengal/bengal/site/content/docs/about/faq.md'), Page(title='Free-Threading', source='/home/runner/work/bengal/bengal/site/content/docs/about/free-threading.md'), Page(title='Glossary', source='/home/runner/work/bengal/bengal/site/content/docs/about/glossary.md'), Page(title='Limitations', source='/home/runner/work/bengal/bengal/site/content/docs/about/limitations.md'), Page(title='Project Philosophy', source='/home/runner/work/bengal/bengal/site/content/docs/about/philosophy.md'), Page(title='Configuration', source='/home/runner/work/bengal/bengal/site/content/docs/building/configuration/_index.md'), Page(title='Build Profiles', source='/home/runner/work/bengal/bengal/site/content/docs/building/configuration/profiles.md'), Page(title='Configuration Reference', source='/home/runner/work/bengal/bengal/site/content/docs/building/configuration/reference.md'), Page(title='Multi-Variant Builds', source='/home/runner/work/bengal/bengal/site/content/docs/building/configuration/variants.md'), Page(title='Deployment', source='/home/runner/work/bengal/bengal/site/content/docs/building/deployment/_index.md'), Page(title='Performance', source='/home/runner/work/bengal/bengal/site/content/docs/building/performance/_index.md'), Page(title='Large Site Optimization', source='/home/runner/work/bengal/bengal/site/content/docs/building/performance/large-sites.md'), Page(title='Template Dependency Tracking', source='/home/runner/work/bengal/bengal/site/content/docs/building/performance/template-deps.md'), Page(title='Troubleshooting', source='/home/runner/work/bengal/bengal/site/content/docs/building/troubleshooting/_index.md'), Page(title='Template Errors', source='/home/runner/work/bengal/bengal/site/content/docs/building/troubleshooting/template-errors.md'), Page(title='Building', source='/home/runner/work/bengal/bengal/site/content/docs/building/_index.md'), Page(title='Connect to IDE (Cursor MCP)', source='/home/runner/work/bengal/bengal/site/content/docs/building/connect-to-ide.md'), Page(title='DX Hints', source='/home/runner/work/bengal/bengal/site/content/docs/building/dx-hints.md'), Page(title='Output Formats', source='/home/runner/work/bengal/bengal/site/content/docs/building/output-formats.md'), Page(title='SEO & Discovery', source='/home/runner/work/bengal/bengal/site/content/docs/building/seo.md'), Page(title='Analysis', source='/home/runner/work/bengal/bengal/site/content/docs/content/analysis/_index.md'), Page(title='Graph Analysis', source='/home/runner/work/bengal/bengal/site/content/docs/content/analysis/graph.md'), Page(title='Notebooks', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/notebooks/_index.md'), Page(title='Content Features', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/notebooks/content-features.ipynb'), Page(title='Hello Notebook', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/notebooks/hello-notebook.ipynb'), Page(title='Notebook Setup Guide', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/notebooks/setup.md'), Page(title='Content Authoring', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/_index.md'), Page(title='Callouts & Admonitions', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/callouts.md'), Page(title='Code Blocks', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/code-blocks.md'), Page(title='External References', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/external-references.md'), Page(title='Images & Media', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/images-media.md'), Page(title='Interactive Elements', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/interactive.md'), Page(title='Linking Guide', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/linking.md'), Page(title='Math and LaTeX', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/math.md'), Page(title='Tables', source='/home/runner/work/bengal/bengal/site/content/docs/content/authoring/tables.md'), Page(title='Content Collections', source='/home/runner/work/bengal/bengal/site/content/docs/content/collections/_index.md'), Page(title='Internationalization (i18n)', source='/home/runner/work/bengal/bengal/site/content/docs/content/i18n/_index.md'), Page(title='i18n Quickstart', source='/home/runner/work/bengal/bengal/site/content/docs/content/i18n/quickstart.md'), Page(title='RTL Layout Support', source='/home/runner/work/bengal/bengal/site/content/docs/content/i18n/rtl.md'), Page(title='Translator Contributor Guide', source='/home/runner/work/bengal/bengal/site/content/docs/content/i18n/translator-guide.md'), Page(title='Content Organization', source='/home/runner/work/bengal/bengal/site/content/docs/content/organization/_index.md'), Page(title='The Component Model', source='/home/runner/work/bengal/bengal/site/content/docs/content/organization/component-model.md'), Page(title='Frontmatter Reference', source='/home/runner/work/bengal/bengal/site/content/docs/content/organization/frontmatter.md'), Page(title='Navigation Menus', source='/home/runner/work/bengal/bengal/site/content/docs/content/organization/menus.md'), Page(title='Content Reuse', source='/home/runner/work/bengal/bengal/site/content/docs/content/reuse/_index.md'), Page(title='Advanced Filtering', source='/home/runner/work/bengal/bengal/site/content/docs/content/reuse/filtering.md'), Page(title='Content Snippets', source='/home/runner/work/bengal/bengal/site/content/docs/content/reuse/snippets.md'), Page(title='Content Sources', source='/home/runner/work/bengal/bengal/site/content/docs/content/sources/_index.md'), Page(title='Autodoc', source='/home/runner/work/bengal/bengal/site/content/docs/content/sources/autodoc.md'), Page(title='Validation', source='/home/runner/work/bengal/bengal/site/content/docs/content/validation/_index.md'), Page(title='Validate and Fix', source='/home/runner/work/bengal/bengal/site/content/docs/content/validation/validate-and-fix.md'), Page(title='Versioned Documentation', source='/home/runner/work/bengal/bengal/site/content/docs/content/versioning/_index.md'), Page(title='Cross-Version Links', source='/home/runner/work/bengal/bengal/site/content/docs/content/versioning/cross-version-links.md'), Page(title='Version Directives', source='/home/runner/work/bengal/bengal/site/content/docs/content/versioning/directives.md'), Page(title='Folder Mode Setup', source='/home/runner/work/bengal/bengal/site/content/docs/content/versioning/folder-mode.md'), Page(title='Git Mode Setup', source='/home/runner/work/bengal/bengal/site/content/docs/content/versioning/git-mode.md'), Page(title='Content', source='/home/runner/work/bengal/bengal/site/content/docs/content/_index.md'), Page(title='Multilingual Sites', source='/home/runner/work/bengal/bengal/site/content/docs/content/i18n.md'), Page(title='Extending Bengal', source='/home/runner/work/bengal/bengal/site/content/docs/extending/_index.md'), Page(title='Build Hooks', source='/home/runner/work/bengal/bengal/site/content/docs/extending/build-hooks.md'), Page(title='Content Collections', source='/home/runner/work/bengal/bengal/site/content/docs/extending/collections.md'), Page(title='Custom Directives', source='/home/runner/work/bengal/bengal/site/content/docs/extending/custom-directives.md'), Page(title='Create Custom Skeletons', source='/home/runner/work/bengal/bengal/site/content/docs/extending/custom-skeletons.md'), Page(title='Custom Content Sources', source='/home/runner/work/bengal/bengal/site/content/docs/extending/custom-sources.md'), Page(title='Writing Plugins', source='/home/runner/work/bengal/bengal/site/content/docs/extending/plugins.md'), Page(title='Template Shortcodes', source='/home/runner/work/bengal/bengal/site/content/docs/extending/shortcodes.md'), Page(title='Theme Customization', source='/home/runner/work/bengal/bengal/site/content/docs/extending/theme-customization.md'), Page(title='Get Started', source='/home/runner/work/bengal/bengal/site/content/docs/get-started/_index.md'), Page(title='Install Bengal', source='/home/runner/work/bengal/bengal/site/content/docs/get-started/installation.md'), Page(title='Contributor Quickstart', source='/home/runner/work/bengal/bengal/site/content/docs/get-started/quickstart-contributor.md'), Page(title='Themer Quickstart', source='/home/runner/work/bengal/bengal/site/content/docs/get-started/quickstart-themer.md'), Page(title='Writer Quickstart', source='/home/runner/work/bengal/bengal/site/content/docs/get-started/quickstart-writer.md'), Page(title='Scaffold Your First Site', source='/home/runner/work/bengal/bengal/site/content/docs/get-started/scaffold-your-site.md'), Page(title='Core Architecture', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/core/_index.md'), Page(title='Build Cache', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/core/cache.md'), Page(title='Content Type Strategies', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/core/content-types.md'), Page(title='Data Flow', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/core/data-flow.md'), Page(title='Object Model', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/core/object-model.md'), Page(title='Build Orchestration', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/core/orchestration.md'), Page(title='Build Pipeline', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/core/pipeline.md'), Page(title='Meta & Operations', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/meta/_index.md'), Page(title='Extension Points', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/meta/extension-points.md'), Page(title='File Organization', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/meta/file-organization.md'), Page(title='Protocol Layer', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/meta/protocols.md'), Page(title='Testing Strategy', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/meta/testing.md'), Page(title='Rendering Pipeline', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/rendering/_index.md'), Page(title='Asset Pipeline', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/rendering/assets-pipeline.md'), Page(title='Content Processing API', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/rendering/content-processing-api.md'), Page(title='Discovery System', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/rendering/discovery.md'), Page(title='Post-Processing', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/rendering/postprocess.md'), Page(title='Rendering Pipeline', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/rendering/rendering.md'), Page(title='Subsystems', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/subsystems/_index.md'), Page(title='Analysis System', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/subsystems/analysis.md'), Page(title='Autodoc System', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/subsystems/autodoc.md'), Page(title='Collections', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/subsystems/collections.md'), Page(title='Content Layer', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/subsystems/content-layer.md'), Page(title='Debug Tools', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/subsystems/debug.md'), Page(title='Fonts System', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/subsystems/fonts.md'), Page(title='Health Check System', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/subsystems/health.md'), Page(title='CLI Output', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/subsystems/output.md'), Page(title='Tooling & CLI', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/tooling/_index.md'), Page(title='CLI', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/tooling/cli.md'), Page(title='Configuration System', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/tooling/config.md'), Page(title='Development Server', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/tooling/server.md'), Page(title='Utilities', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/tooling/utils.md'), Page(title='Architecture', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/_index.md'), Page(title='Design Principles', source='/home/runner/work/bengal/bengal/site/content/docs/reference/architecture/design-principles.md'), Page(title='Directives Reference', source='/home/runner/work/bengal/bengal/site/content/docs/reference/directives/_index.md'), Page(title='Admonitions', source='/home/runner/work/bengal/bengal/site/content/docs/reference/directives/admonitions.md'), Page(title='Content Reuse Directives', source='/home/runner/work/bengal/bengal/site/content/docs/reference/directives/content-reuse.md'), Page(title='Formatting Directives', source='/home/runner/work/bengal/bengal/site/content/docs/reference/directives/formatting.md'), Page(title='Interactive Directives', source='/home/runner/work/bengal/bengal/site/content/docs/reference/directives/interactive.md'), Page(title='Layout Directives', source='/home/runner/work/bengal/bengal/site/content/docs/reference/directives/layout.md'), Page(title='Media Directives', source='/home/runner/work/bengal/bengal/site/content/docs/reference/directives/media.md'), Page(title='Navigation Directives', source='/home/runner/work/bengal/bengal/site/content/docs/reference/directives/navigation.md'), Page(title='Versioning Directives', source='/home/runner/work/bengal/bengal/site/content/docs/reference/directives/versioning.md'), Page(title='Error Code Reference', source='/home/runner/work/bengal/bengal/site/content/docs/reference/errors/_index.md'), Page(title='Health Check Codes Reference', source='/home/runner/work/bengal/bengal/site/content/docs/reference/errors/health-codes.md'), Page(title='Template Functions Reference', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/_index.md'), Page(title='Collection Filters', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/collection-filters.md'), Page(title='Content Filters', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/content-filters.md'), Page(title='Debug Filters', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/debug-filters.md'), Page(title='Internationalization Functions', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/i18n-functions.md'), Page(title='Linking Functions', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/linking-functions.md'), Page(title='Math & Data Functions', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/math-data-filters.md'), Page(title='Navigation Functions', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/navigation-functions.md'), Page(title='Page & Section Properties', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/page-properties.md'), Page(title='Template Functions Reference (Generated)', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/reference-generated.md'), Page(title='SEO, Image & Theme Functions', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/seo-image-functions.md'), Page(title='String & Date Filters', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/string-date-filters.md'), Page(title='View Filters', source='/home/runner/work/bengal/bengal/site/content/docs/reference/template-functions/view-filters.md'), Page(title='Reference', source='/home/runner/work/bengal/bengal/site/content/docs/reference/_index.md'), Page(title='Cheatsheet', source='/home/runner/work/bengal/bengal/site/content/docs/reference/cheatsheet.md'), Page(title='Icon Reference', source='/home/runner/work/bengal/bengal/site/content/docs/reference/icons.md'), Page(title='Kida Syntax Reference', source='/home/runner/work/bengal/bengal/site/content/docs/reference/kida-syntax.md'), Page(title='Security Hardening', source='/home/runner/work/bengal/bengal/site/content/docs/reference/security.md'), Page(title='Site Templates Reference', source='/home/runner/work/bengal/bengal/site/content/docs/reference/site-templates.md'), Page(title='Theme Variables', source='/home/runner/work/bengal/bengal/site/content/docs/reference/theme-variables.md'), Page(title='Assets', source='/home/runner/work/bengal/bengal/site/content/docs/theming/assets/_index.md'), Page(title='Template Cookbook', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/_index.md'), Page(title='Archive Page', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/archive-page.md'), Page(title='Author Byline', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/author-byline.md'), Page(title='Blog Comments', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/blog-comments.md'), Page(title='Content Freshness', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/content-freshness.md'), Page(title='Featured Posts', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/featured-posts.md'), Page(title='Filter by Multiple Tags', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/filter-by-tags.md'), Page(title='Group by Category', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/group-by-category.md'), Page(title='List Recent Posts', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/list-recent-posts.md'), Page(title='Show Reading Time', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/reading-time.md'), Page(title='Section Statistics', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/section-statistics.md'), Page(title='Series Navigation', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/series-navigation.md'), Page(title='Social Sharing Buttons', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/social-sharing-buttons.md'), Page(title='Add Table of Contents', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/table-of-contents.md'), Page(title='Template Views', source='/home/runner/work/bengal/bengal/site/content/docs/theming/recipes/template-views.md'), Page(title='Caching', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/caching/_index.md'), Page(title='Automatic Block Caching', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/caching/automatic.md'), Page(title='Fragment Caching', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/caching/fragments.md'), Page(title='Migration', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/migration/_index.md'), Page(title='From Jinja2', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/migration/from-jinja.md'), Page(title='Syntax', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/syntax/_index.md'), Page(title='Block Syntax', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/syntax/blocks.md'), Page(title='Functions', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/syntax/functions.md'), Page(title='Operators', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/syntax/operators.md'), Page(title='Variables and Scoping', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/syntax/variables.md'), Page(title='Kida Template Engine', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/_index.md'), Page(title='Add a Custom Filter', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/add-custom-filter.md'), Page(title='Kida Architecture', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/architecture.md'), Page(title='Create a Custom Template', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/create-custom-template.md'), Page(title='Kida Performance', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/kida/performance.md'), Page(title='Templating', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/_index.md'), Page(title='Bring Your Own Template Engine', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/custom-engine.md'), Page(title='Functions vs Filters Quick Reference', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/functions-quick-reference.md'), Page(title='Template Functions', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/functions.md'), Page(title='Image Processing', source='/home/runner/work/bengal/bengal/site/content/docs/theming/templating/image-processing.md'), Page(title='Themes', source='/home/runner/work/bengal/bengal/site/content/docs/theming/themes/_index.md'), Page(title='Customize Themes', source='/home/runner/work/bengal/bengal/site/content/docs/theming/themes/customize.md'), Page(title='Theming', source='/home/runner/work/bengal/bengal/site/content/docs/theming/_index.md'), Page(title='Content Patterns', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/content/_index.md'), Page(title='Create a Tutorial Series', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/content/create-a-tutorial-series.md'), Page(title='Migration Guides', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/migration/_index.md'), Page(title='From Docusaurus/MDX', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/migration/from-docusaurus.md'), Page(title='From Fern', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/migration/from-fern.md'), Page(title='From Hugo', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/migration/from-hugo.md'), Page(title='From Jekyll', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/migration/from-jekyll.md'), Page(title='From Mintlify', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/migration/from-mintlify.md'), Page(title='From MkDocs', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/migration/from-mkdocs.md'), Page(title='From Sphinx/RST', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/migration/from-sphinx.md'), Page(title='Operations', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/operations/_index.md'), Page(title='Analyze and Improve Site Connectivity', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/operations/analyze-site-connectivity.md'), Page(title='Automate with GitHub Actions', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/operations/automate-with-github-actions.md'), Page(title='Build Sites', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/sites/_index.md'), Page(title='Build a Blog from Scratch', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/sites/build-a-blog.md'), Page(title='Build a Multi-Author Blog', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/sites/build-a-multi-author-blog.md'), Page(title='Skeleton YAML Quickstart', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/sites/skeleton-quickstart.md'), Page(title='Theming', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/theming/_index.md'), Page(title='Getting Started with Kida', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/theming/getting-started-with-kida.md'), Page(title='Swizzle and Customize the Default Theme', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/theming/swizzle-default-theme.md'), Page(title='Tutorials', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/_index.md'), Page(title='User Scenarios', source='/home/runner/work/bengal/bengal/site/content/docs/tutorials/user-scenarios.md'), Page(title='Documentation', source='/home/runner/work/bengal/bengal/site/content/docs/_index.md'), Page(title='Bengal 0.1.0', source='/home/runner/work/bengal/bengal/site/content/releases/0.1.0.md'), Page(title='Bengal 0.1.1', source='/home/runner/work/bengal/bengal/site/content/releases/0.1.1.md'), Page(title='Bengal 0.1.2', source='/home/runner/work/bengal/bengal/site/content/releases/0.1.2.md'), Page(title='Bengal 0.1.3', source='/home/runner/work/bengal/bengal/site/content/releases/0.1.3.md'), Page(title='Bengal 0.1.4', source='/home/runner/work/bengal/bengal/site/content/releases/0.1.4.md'), Page(title='Bengal 0.1.5', source='/home/runner/work/bengal/bengal/site/content/releases/0.1.5.md'), Page(title='Bengal 0.1.6', source='/home/runner/work/bengal/bengal/site/content/releases/0.1.6.md'), Page(title='Bengal 0.1.7', source='/home/runner/work/bengal/bengal/site/content/releases/0.1.7.md'), Page(title='Bengal 0.1.8', source='/home/runner/work/bengal/bengal/site/content/releases/0.1.8.md'), Page(title='Bengal 0.1.9', source='/home/runner/work/bengal/bengal/site/content/releases/0.1.9.md'), Page(title='Bengal 0.2.0', source='/home/runner/work/bengal/bengal/site/content/releases/0.2.0.md'), Page(title='Bengal 0.2.1', source='/home/runner/work/bengal/bengal/site/content/releases/0.2.1.md'), Page(title='Bengal 0.2.3', source='/home/runner/work/bengal/bengal/site/content/releases/0.2.3.md'), Page(title='Bengal 0.2.4', source='/home/runner/work/bengal/bengal/site/content/releases/0.2.4.md'), Page(title='Bengal 0.2.5', source='/home/runner/work/bengal/bengal/site/content/releases/0.2.5.md'), Page(title='Bengal 0.2.6', source='/home/runner/work/bengal/bengal/site/content/releases/0.2.6.md'), Page(title='Bengal 0.2.7', source='/home/runner/work/bengal/bengal/site/content/releases/0.2.7.md'), Page(title='Releases', source='/home/runner/work/bengal/bengal/site/content/releases/_index.md'), Page(title='Learning Tracks', source='/home/runner/work/bengal/bengal/site/content/tracks/_index.md'), Page(title='API Documentation Specialist', source='/home/runner/work/bengal/bengal/site/content/tracks/api-docs-specialist.md'), Page(title='Content Author Mastery', source='/home/runner/work/bengal/bengal/site/content/tracks/content-mastery.md'), Page(title='Extension Developer', source='/home/runner/work/bengal/bengal/site/content/tracks/extension-developer.md'), Page(title='Migration Express', source='/home/runner/work/bengal/bengal/site/content/tracks/migration-express.md'), Page(title='Performance Optimizer', source='/home/runner/work/bengal/bengal/site/content/tracks/performance-optimizer.md'), Page(title='Documentation Team Lead', source='/home/runner/work/bengal/bengal/site/content/tracks/team-lead.md'), Page(title='Theme Developer Journey', source='/home/runner/work/bengal/bengal/site/content/tracks/theme-developer.md'), Page(title='Versioning Expert', source='/home/runner/work/bengal/bengal/site/content/tracks/versioning-expert.md'), Page(title='Zero to Deployed', source='/home/runner/work/bengal/bengal/site/content/tracks/zero-to-deployed.md'), Page(title='bengal', source='api/bengal/bengal.md'), Page(title='__main__', source='api/bengal/__main__.md'), Page(title='concurrency', source='api/bengal/concurrency.md'), Page(title='base', source='api/bengal/content_types/base.md'), Page(title='content_types', source='api/bengal/content_types.md'), Page(title='utils', source='api/bengal/content_types/utils.md'), Page(title='templates', source='api/bengal/content_types/templates.md'), Page(title='registry', source='api/bengal/content_types/registry.md'), Page(title='strategies', source='api/bengal/content_types/strategies.md'), Page(title='generate', source='api/bengal/themes/generate.md'), Page(title='swizzle', source='api/bengal/themes/swizzle.md'), Page(title='utils', source='api/bengal/themes/utils.md'), Page(title='themes', source='api/bengal/themes.md'), Page(title='tokens', source='api/bengal/themes/tokens.md'), Page(title='config', source='api/bengal/themes/config.md'), Page(title='js_bundler', source='api/bengal/assets/js_bundler.md'), Page(title='assets', source='api/bengal/assets.md'), Page(title='_discovery', source='api/bengal/assets/_discovery.md'), Page(title='manifest', source='api/bengal/assets/manifest.md'), Page(title='pipeline', source='api/bengal/assets/pipeline.md'), Page(title='css_minifier', source='api/bengal/assets/css_minifier.md'), Page(title='cli', source='api/bengal/cli.md'), Page(title='progress', source='api/bengal/cli/progress.md'), Page(title='__main__', source='api/bengal/cli/__main__.md'), Page(title='base', source='api/bengal/cli/base.md'), Page(title='utils', source='api/bengal/services/utils.md'), Page(title='services', source='api/bengal/services.md'), Page(title='query', source='api/bengal/services/query.md'), Page(title='theme', source='api/bengal/services/theme.md'), Page(title='config', source='api/bengal/services/config.md'), Page(title='validation', source='api/bengal/services/validation.md'), Page(title='experimental', source='api/bengal/experimental.md'), Page(title='data', source='api/bengal/services/data.md'), Page(title='utils', source='api/bengal/scaffolds/utils.md'), Page(title='scaffolds', source='api/bengal/scaffolds.md'), Page(title='base', source='api/bengal/scaffolds/base.md'), Page(title='api_doc_enhancer', source='api/bengal/rendering/api_doc_enhancer.md'), Page(title='registry', source='api/bengal/scaffolds/registry.md'), Page(title='metadata', source='api/bengal/rendering/metadata.md'), Page(title='asset_tracking', source='api/bengal/rendering/asset_tracking.md'), Page(title='asset_extractor', source='api/bengal/rendering/asset_extractor.md'), Page(title='template_context_validation', source='api/bengal/rendering/template_context_validation.md'), Page(title='rendering', source='api/bengal/rendering.md'), Page(title='urls', source='api/bengal/rendering/urls.md'), Page(title='content_cache', source='api/bengal/rendering/content_cache.md'), Page(title='template_profiler', source='api/bengal/rendering/template_profiler.md'), Page(title='assets', source='api/bengal/rendering/assets.md'), Page(title='template_tests', source='api/bengal/rendering/template_tests.md'), Page(title='link_transformer', source='api/bengal/rendering/link_transformer.md'), Page(title='renderer', source='api/bengal/rendering/renderer.md'), Page(title='block_cache', source='api/bengal/rendering/block_cache.md'), Page(title='shortcodes', source='api/bengal/rendering/shortcodes.md'), Page(title='page_operations', source='api/bengal/rendering/page_operations.md'), Page(title='models', source='api/bengal/debug/models.md'), Page(title='base', source='api/bengal/debug/base.md'), Page(title='utils', source='api/bengal/debug/utils.md'), Page(title='dependency_visualizer', source='api/bengal/debug/dependency_visualizer.md'), Page(title='debug', source='api/bengal/debug.md'), Page(title='reporter', source='api/bengal/debug/reporter.md'), Page(title='config_inspector', source='api/bengal/debug/config_inspector.md'), Page(title='content_migrator', source='api/bengal/debug/content_migrator.md'), Page(title='delta_analyzer', source='api/bengal/debug/delta_analyzer.md'), Page(title='incremental_debugger', source='api/bengal/debug/incremental_debugger.md'), Page(title='explainer', source='api/bengal/debug/explainer.md'), Page(title='i18n', source='api/bengal/i18n.md'), Page(title='scout', source='api/bengal/snapshots/scout.md'), Page(title='catalog', source='api/bengal/i18n/catalog.md'), Page(title='scheduling', source='api/bengal/snapshots/scheduling.md'), Page(title='content', source='api/bengal/snapshots/content.md'), Page(title='scheduler', source='api/bengal/snapshots/scheduler.md'), Page(title='utils', source='api/bengal/snapshots/utils.md'), Page(title='snapshots', source='api/bengal/snapshots.md'), Page(title='builder', source='api/bengal/snapshots/builder.md'), Page(title='types', source='api/bengal/snapshots/types.md'), Page(title='templates', source='api/bengal/snapshots/templates.md'), Page(title='speculative', source='api/bengal/snapshots/speculative.md'), Page(title='persistence', source='api/bengal/snapshots/persistence.md'), Page(title='merge', source='api/bengal/config/merge.md'), Page(title='build_options_resolver', source='api/bengal/config/build_options_resolver.md'), Page(title='url_policy', source='api/bengal/config/url_policy.md'), Page(title='env_overrides', source='api/bengal/config/env_overrides.md'), Page(title='deprecation', source='api/bengal/config/deprecation.md'), Page(title='env_config', source='api/bengal/config/env_config.md'), Page(title='utils', source='api/bengal/config/utils.md'), Page(title='config', source='api/bengal/config.md'), Page(title='origin_tracker', source='api/bengal/config/origin_tracker.md'), Page(title='accessor', source='api/bengal/config/accessor.md'), Page(title='unified_loader', source='api/bengal/config/unified_loader.md'), Page(title='feature_mappings', source='api/bengal/config/feature_mappings.md'), Page(title='loader_utils', source='api/bengal/config/loader_utils.md'), Page(title='snapshot', source='api/bengal/config/snapshot.md'), Page(title='environment', source='api/bengal/config/environment.md'), Page(title='defaults', source='api/bengal/config/defaults.md'), Page(title='types', source='api/bengal/config/types.md'), Page(title='validators', source='api/bengal/config/validators.md'), Page(title='hash', source='api/bengal/config/hash.md'), Page(title='directory_loader', source='api/bengal/config/directory_loader.md'), Page(title='full_to_incremental', source='api/bengal/orchestration/full_to_incremental.md'), Page(title='complexity', source='api/bengal/orchestration/complexity.md'), Page(title='postprocess', source='api/bengal/orchestration/postprocess.md'), Page(title='content', source='api/bengal/orchestration/content.md'), Page(title='taxonomy', source='api/bengal/orchestration/taxonomy.md'), Page(title='asset', source='api/bengal/orchestration/asset.md'), Page(title='section', source='api/bengal/orchestration/section.md'), Page(title='badge', source='api/bengal/orchestration/badge.md'), Page(title='related_posts', source='api/bengal/orchestration/related_posts.md'), Page(title='orchestration', source='api/bengal/orchestration.md'), Page(title='css_optimizer', source='api/bengal/orchestration/css_optimizer.md'), Page(title='feature_detector', source='api/bengal/orchestration/feature_detector.md'), Page(title='static', source='api/bengal/orchestration/static.md'), Page(title='build_state', source='api/bengal/orchestration/build_state.md'), Page(title='types', source='api/bengal/orchestration/types.md'), Page(title='css_manifest_types', source='api/bengal/orchestration/css_manifest_types.md'), Page(title='streaming', source='api/bengal/orchestration/streaming.md'), Page(title='constants', source='api/bengal/orchestration/constants.md'), Page(title='summary', source='api/bengal/orchestration/summary.md'), Page(title='build_context', source='api/bengal/orchestration/build_context.md'), Page(title='stats_minimal', source='api/bengal/utils/stats_minimal.md'), Page(title='xref', source='api/bengal/utils/xref.md'), Page(title='menu', source='api/bengal/orchestration/menu.md'), Page(title='utils', source='api/bengal/utils.md'), Page(title='autodoc', source='api/bengal/utils/autodoc.md'), Page(title='stats_protocol', source='api/bengal/utils/stats_protocol.md'), Page(title='serialization', source='api/bengal/utils/serialization.md'), Page(title='cache_registry', source='api/bengal/utils/cache_registry.md'), Page(title='utils', source='api/bengal/effects/utils.md'), Page(title='effects', source='api/bengal/effects.md'), Page(title='block_diff', source='api/bengal/effects/block_diff.md'), Page(title='render_integration', source='api/bengal/effects/render_integration.md'), Page(title='tracer', source='api/bengal/effects/tracer.md'), Page(title='version', source='api/bengal/cache/version.md'), Page(title='effect', source='api/bengal/effects/effect.md'), Page(title='generated_page_cache', source='api/bengal/cache/generated_page_cache.md'), Page(title='query_index', source='api/bengal/cache/query_index.md'), Page(title='compression', source='api/bengal/cache/compression.md'), Page(title='page_discovery_cache', source='api/bengal/cache/page_discovery_cache.md'), Page(title='paths', source='api/bengal/cache/paths.md'), Page(title='path_registry', source='api/bengal/cache/path_registry.md'), Page(title='cache', source='api/bengal/cache.md'), Page(title='manifest', source='api/bengal/cache/manifest.md'), Page(title='content_hash_registry', source='api/bengal/cache/content_hash_registry.md'), Page(title='query_index_registry', source='api/bengal/cache/query_index_registry.md'), Page(title='asset_dependency_map', source='api/bengal/cache/asset_dependency_map.md'), Page(title='cache_store', source='api/bengal/cache/cache_store.md'), Page(title='directive_cache', source='api/bengal/cache/directive_cache.md'), Page(title='base', source='api/bengal/autodoc/base.md'), Page(title='taxonomy_index', source='api/bengal/cache/taxonomy_index.md'), Page(title='autodoc', source='api/bengal/autodoc.md'), Page(title='hashing', source='api/bengal/autodoc/hashing.md'), Page(title='config', source='api/bengal/autodoc/config.md'), Page(title='robots_txt', source='api/bengal/postprocess/robots_txt.md'), Page(title='docstring_parser', source='api/bengal/autodoc/docstring_parser.md'), Page(title='postprocess', source='api/bengal/postprocess.md'), Page(title='speculation', source='api/bengal/postprocess/speculation.md'), Page(title='sitemap', source='api/bengal/postprocess/sitemap.md'), Page(title='redirects', source='api/bengal/postprocess/redirects.md'), Page(title='social_cards', source='api/bengal/postprocess/social_cards.md'), Page(title='special_pages', source='api/bengal/postprocess/special_pages.md'), Page(title='xref_index', source='api/bengal/postprocess/xref_index.md'), Page(title='rss', source='api/bengal/postprocess/rss.md'), Page(title='html_output', source='api/bengal/postprocess/html_output.md'), Page(title='link_registry', source='api/bengal/health/link_registry.md'), Page(title='base', source='api/bengal/health/base.md'), Page(title='utils', source='api/bengal/health/utils.md'), Page(title='health', source='api/bengal/health.md'), Page(title='health_check', source='api/bengal/health/health_check.md'), Page(title='backend', source='api/bengal/server/backend.md'), Page(title='ignore_filter', source='api/bengal/server/ignore_filter.md'), Page(title='build_hooks', source='api/bengal/server/build_hooks.md'), Page(title='responses', source='api/bengal/server/responses.md'), Page(title='types', source='api/bengal/health/types.md'), Page(title='reload_types', source='api/bengal/server/reload_types.md'), Page(title='resource_manager', source='api/bengal/server/resource_manager.md'), Page(title='utils', source='api/bengal/server/utils.md'), Page(title='reload_controller', source='api/bengal/server/reload_controller.md'), Page(title='server', source='api/bengal/server.md'), Page(title='buffer_manager', source='api/bengal/server/buffer_manager.md'), Page(title='build_trigger', source='api/bengal/server/build_trigger.md'), Page(title='build_executor', source='api/bengal/server/build_executor.md'), Page(title='dev_server', source='api/bengal/server/dev_server.md'), Page(title='build_state', source='api/bengal/server/build_state.md'), Page(title='asgi_app', source='api/bengal/server/asgi_app.md'), Page(title='constants', source='api/bengal/server/constants.md'), Page(title='watcher_runner', source='api/bengal/server/watcher_runner.md'), Page(title='file_watcher', source='api/bengal/server/file_watcher.md'), Page(title='pid_manager', source='api/bengal/server/pid_manager.md'), Page(title='reload_protocols', source='api/bengal/server/reload_protocols.md'), Page(title='python_markdown', source='api/bengal/parsing/python_markdown.md'), Page(title='factory', source='api/bengal/parsing/factory.md'), Page(title='parsing', source='api/bengal/parsing.md'), Page(title='base', source='api/bengal/parsing/base.md'), Page(title='protocols', source='api/bengal/parsing/protocols.md'), Page(title='content', source='api/bengal/content.md'), Page(title='errors', source='api/bengal/collections/errors.md'), Page(title='loader', source='api/bengal/collections/loader.md'), Page(title='collections', source='api/bengal/collections.md'), Page(title='schemas', source='api/bengal/collections/schemas.md'), Page(title='loader', source='api/bengal/plugins/loader.md'), Page(title='protocol', source='api/bengal/plugins/protocol.md'), Page(title='plugins', source='api/bengal/plugins.md'), Page(title='validator', source='api/bengal/collections/validator.md'), Page(title='registry', source='api/bengal/plugins/registry.md'), Page(title='integration', source='api/bengal/plugins/integration.md'), Page(title='utils', source='api/bengal/fonts/utils.md'), Page(title='fonts', source='api/bengal/fonts.md'), Page(title='generator', source='api/bengal/fonts/generator.md'), Page(title='results', source='api/bengal/analysis/results.md'), Page(title='analysis', source='api/bengal/analysis.md'), Page(title='downloader', source='api/bengal/fonts/downloader.md'), Page(title='content_intelligence', source='api/bengal/analysis/content_intelligence.md'), Page(title='icons', source='api/bengal/output/icons.md'), Page(title='utils', source='api/bengal/output/utils.md'), Page(title='output', source='api/bengal/output.md'), Page(title='dev_server', source='api/bengal/output/dev_server.md'), Page(title='globals', source='api/bengal/output/globals.md'), Page(title='enums', source='api/bengal/output/enums.md'), Page(title='colors', source='api/bengal/output/colors.md'), Page(title='resolver', source='api/bengal/icons/resolver.md'), Page(title='core', source='api/bengal/output/core.md'), Page(title='icons', source='api/bengal/icons.md'), Page(title='svg', source='api/bengal/icons/svg.md'), Page(title='analysis', source='api/bengal/protocols/analysis.md'), Page(title='rendering', source='api/bengal/protocols/rendering.md'), Page(title='core', source='api/bengal/protocols/core.md'), Page(title='protocols', source='api/bengal/protocols.md'), Page(title='stats', source='api/bengal/protocols/stats.md'), Page(title='build', source='api/bengal/protocols/build.md'), Page(title='infrastructure', source='api/bengal/protocols/infrastructure.md'), Page(title='capabilities', source='api/bengal/protocols/capabilities.md'), Page(title='site_data', source='api/bengal/core/site_data.md'), Page(title='diagnostics', source='api/bengal/core/diagnostics.md'), Page(title='version', source='api/bengal/core/version.md'), Page(title='series', source='api/bengal/core/series.md'), Page(title='cascade_snapshot', source='api/bengal/core/cascade_snapshot.md'), Page(title='author', source='api/bengal/core/author.md'), Page(title='core', source='api/bengal/core.md'), Page(title='build_state', source='api/bengal/core/build_state.md'), Page(title='registry', source='api/bengal/core/registry.md'), Page(title='nav_tree', source='api/bengal/core/nav_tree.md'), Page(title='page_cache', source='api/bengal/core/page_cache.md'), Page(title='site_content', source='api/bengal/core/site_content.md'), Page(title='menu', source='api/bengal/core/menu.md'), Page(title='url_ownership', source='api/bengal/core/url_ownership.md'), Page(title='suggestions', source='api/bengal/errors/suggestions.md'), Page(title='utils', source='api/bengal/errors/utils.md'), Page(title='codes', source='api/bengal/errors/codes.md'), Page(title='errors', source='api/bengal/errors.md'), Page(title='reporter', source='api/bengal/errors/reporter.md'), Page(title='display', source='api/bengal/errors/display.md'), Page(title='recovery', source='api/bengal/errors/recovery.md'), Page(title='dev_server', source='api/bengal/errors/dev_server.md'), Page(title='exceptions', source='api/bengal/errors/exceptions.md'), Page(title='context', source='api/bengal/errors/context.md'), Page(title='handlers', source='api/bengal/errors/handlers.md'), Page(title='session', source='api/bengal/errors/session.md'), Page(title='aggregation', source='api/bengal/errors/aggregation.md'), Page(title='traceback', source='api/bengal/errors/traceback.md'), Page(title='renderer', source='api/bengal/errors/traceback/renderer.md'), Page(title='config', source='api/bengal/errors/traceback/config.md'), Page(title='resolution', source='api/bengal/core/theme/resolution.md'), Page(title='theme', source='api/bengal/core/theme.md'), Page(title='compatibility', source='api/bengal/core/theme/compatibility.md'), Page(title='config', source='api/bengal/core/theme/config.md'), Page(title='cascade', source='api/bengal/core/cascade.md'), Page(title='registry', source='api/bengal/core/theme/registry.md'), Page(title='relationships', source='api/bengal/core/page/relationships.md'), Page(title='view', source='api/bengal/core/cascade/view.md'), Page(title='content', source='api/bengal/core/page/content.md'), Page(title='page_core', source='api/bengal/core/page/page_core.md'), Page(title='utils', source='api/bengal/core/page/utils.md'), Page(title='metadata', source='api/bengal/core/page/metadata.md'), Page(title='bundle', source='api/bengal/core/page/bundle.md'), Page(title='page', source='api/bengal/core/page.md'), Page(title='frontmatter', source='api/bengal/core/page/frontmatter.md'), Page(title='navigation', source='api/bengal/core/page/navigation.md'), Page(title='computed', source='api/bengal/core/page/computed.md'), Page(title='cascade', source='api/bengal/core/site/cascade.md'), Page(title='proxy', source='api/bengal/core/page/proxy.md'), Page(title='accessors', source='api/bengal/core/site/accessors.md'), Page(title='factory', source='api/bengal/core/site/factory.md'), Page(title='versioning', source='api/bengal/core/site/versioning.md'), Page(title='config_normalized', source='api/bengal/core/site/config_normalized.md'), Page(title='discovery', source='api/bengal/core/site/discovery.md'), Page(title='site', source='api/bengal/core/site.md'), Page(title='lifecycle', source='api/bengal/core/site/lifecycle.md'), Page(title='utils', source='api/bengal/core/section/utils.md'), Page(title='queries', source='api/bengal/core/section/queries.md'), Page(title='hierarchy', source='api/bengal/core/section/hierarchy.md'), Page(title='protocols', source='api/bengal/core/section/protocols.md'), Page(title='section', source='api/bengal/core/section.md'), Page(title='weighted', source='api/bengal/core/section/weighted.md'), Page(title='ergonomics', source='api/bengal/core/section/ergonomics.md'), Page(title='sorting', source='api/bengal/core/utils/sorting.md'), Page(title='utils', source='api/bengal/core/utils.md'), Page(title='url', source='api/bengal/core/utils/url.md'), Page(title='navigation', source='api/bengal/core/section/navigation.md'), Page(title='config', source='api/bengal/core/utils/config.md'), Page(title='text', source='api/bengal/core/utils/text.md'), Page(title='asset', source='api/bengal/core/asset.md'), Page(title='css_transforms', source='api/bengal/core/asset/css_transforms.md'), Page(title='collector', source='api/bengal/core/output/collector.md'), Page(title='output', source='api/bengal/core/output.md'), Page(title='types', source='api/bengal/core/output/types.md'), Page(title='resources', source='api/bengal/core/resources.md'), Page(title='asset_core', source='api/bengal/core/asset/asset_core.md'), Page(title='types', source='api/bengal/core/resources/types.md'), Page(title='processor', source='api/bengal/core/resources/processor.md'), Page(title='image', source='api/bengal/core/resources/image.md'), Page(title='analyzer', source='api/bengal/analysis/graph/analyzer.md'), Page(title='metrics', source='api/bengal/analysis/graph/metrics.md'), Page(title='knowledge_graph', source='api/bengal/analysis/graph/knowledge_graph.md'), Page(title='page_rank', source='api/bengal/analysis/graph/page_rank.md'), Page(title='graph', source='api/bengal/analysis/graph.md'), Page(title='visualizer', source='api/bengal/analysis/graph/visualizer.md'), Page(title='reporter', source='api/bengal/analysis/graph/reporter.md'), Page(title='builder', source='api/bengal/analysis/graph/builder.md'), Page(title='community_detection', source='api/bengal/analysis/graph/community_detection.md'), Page(title='patterns', source='api/bengal/analysis/links/patterns.md'), Page(title='links', source='api/bengal/analysis/links.md'), Page(title='suggestions', source='api/bengal/analysis/links/suggestions.md'), Page(title='traversal', source='api/bengal/analysis/utils/traversal.md'), Page(title='utils', source='api/bengal/analysis/utils.md'), Page(title='types', source='api/bengal/analysis/links/types.md'), Page(title='indexing', source='api/bengal/analysis/utils/indexing.md'), Page(title='pages', source='api/bengal/analysis/utils/pages.md'), Page(title='constants', source='api/bengal/analysis/utils/constants.md'), Page(title='scoring', source='api/bengal/analysis/utils/scoring.md'), Page(title='validation', source='api/bengal/analysis/utils/validation.md'), Page(title='performance', source='api/bengal/analysis/performance.md'), Page(title='advisor', source='api/bengal/analysis/performance/advisor.md'), Page(title='path_analysis', source='api/bengal/analysis/performance/path_analysis.md'), Page(title='local', source='api/bengal/content/sources/local.md'), Page(title='notion', source='api/bengal/content/sources/notion.md'), Page(title='entry', source='api/bengal/content/sources/entry.md'), Page(title='sources', source='api/bengal/content/sources.md'), Page(title='github', source='api/bengal/content/sources/github.md'), Page(title='source', source='api/bengal/content/sources/source.md'), Page(title='loaders', source='api/bengal/content/sources/loaders.md'), Page(title='rest', source='api/bengal/content/sources/rest.md'), Page(title='http_errors', source='api/bengal/content/utils/http_errors.md'), Page(title='utils', source='api/bengal/content/utils.md'), Page(title='constants', source='api/bengal/content/utils/constants.md'), Page(title='async_parallel', source='api/bengal/content/utils/async_parallel.md'), Page(title='slugify', source='api/bengal/content/utils/slugify.md'), Page(title='manager', source='api/bengal/content/sources/manager.md'), Page(title='versioning', source='api/bengal/content/versioning.md'), Page(title='resolver', source='api/bengal/content/versioning/resolver.md'), Page(title='artifacts', source='api/bengal/content/versioning/artifacts.md'), Page(title='git_adapter', source='api/bengal/content/versioning/git_adapter.md'), Page(title='section_builder', source='api/bengal/content/discovery/section_builder.md'), Page(title='version_diff', source='api/bengal/content/discovery/version_diff.md'), Page(title='page_factory', source='api/bengal/content/discovery/page_factory.md'), Page(title='discovery', source='api/bengal/content/discovery.md'), Page(title='asset_discovery', source='api/bengal/content/discovery/asset_discovery.md'), Page(title='directory_walker', source='api/bengal/content/discovery/directory_walker.md'), Page(title='content_discovery', source='api/bengal/content/discovery/content_discovery.md'), Page(title='content_parser', source='api/bengal/content/discovery/content_parser.md'), Page(title='transforms', source='api/bengal/parsing/ast/transforms.md'), Page(title='ast', source='api/bengal/parsing/ast.md'), Page(title='utils', source='api/bengal/parsing/ast/utils.md'), Page(title='backends', source='api/bengal/parsing/backends.md'), Page(title='native_html', source='api/bengal/parsing/backends/native_html.md'), Page(title='types', source='api/bengal/parsing/ast/types.md'), Page(title='pool', source='api/bengal/parsing/backends/patitas/pool.md'), Page(title='protocols', source='api/bengal/parsing/backends/patitas/protocols.md'), Page(title='config', source='api/bengal/parsing/backends/patitas/config.md'), Page(title='patitas', source='api/bengal/parsing/backends/patitas.md'), Page(title='wrapper', source='api/bengal/parsing/backends/patitas/wrapper.md'), Page(title='accumulator', source='api/bengal/parsing/backends/patitas/accumulator.md'), Page(title='request_context', source='api/bengal/parsing/backends/patitas/request_context.md'), Page(title='render_config', source='api/bengal/parsing/backends/patitas/render_config.md'), Page(title='directives', source='api/bengal/parsing/backends/patitas/directives.md'), Page(title='protocol', source='api/bengal/parsing/backends/patitas/directives/protocol.md'), Page(title='decorator', source='api/bengal/parsing/backends/patitas/directives/decorator.md'), Page(title='contracts', source='api/bengal/parsing/backends/patitas/directives/contracts.md'), Page(title='options', source='api/bengal/parsing/backends/patitas/directives/options.md'), Page(title='registry', source='api/bengal/parsing/backends/patitas/directives/registry.md'), Page(title='utils', source='api/bengal/parsing/backends/patitas/utils.md'), Page(title='pool', source='api/bengal/parsing/backends/patitas/utils/pool.md'), Page(title='contextvar', source='api/bengal/parsing/backends/patitas/utils/contextvar.md'), Page(title='blocks', source='api/bengal/parsing/backends/patitas/renderers/blocks.md'), Page(title='utils', source='api/bengal/parsing/backends/patitas/renderers/utils.md'), Page(title='renderers', source='api/bengal/parsing/backends/patitas/renderers.md'), Page(title='html', source='api/bengal/parsing/backends/patitas/renderers/html.md'), Page(title='protocols', source='api/bengal/parsing/backends/patitas/renderers/protocols.md'), Page(title='directives', source='api/bengal/parsing/backends/patitas/renderers/directives.md'), Page(title='inline', source='api/bengal/parsing/backends/patitas/renderers/inline.md'), Page(title='roles', source='api/bengal/parsing/backends/patitas/roles.md'), Page(title='protocol', source='api/bengal/parsing/backends/patitas/roles/protocol.md'), Page(title='icons', source='api/bengal/parsing/backends/patitas/roles/builtins/icons.md'), Page(title='registry', source='api/bengal/parsing/backends/patitas/roles/registry.md'), Page(title='math', source='api/bengal/parsing/backends/patitas/roles/builtins/math.md'), Page(title='builtins', source='api/bengal/parsing/backends/patitas/roles/builtins.md'), Page(title='reference', source='api/bengal/parsing/backends/patitas/roles/builtins/reference.md'), Page(title='formatting', source='api/bengal/parsing/backends/patitas/roles/builtins/formatting.md'), Page(title='data_table', source='api/bengal/parsing/backends/patitas/directives/builtins/data_table.md'), Page(title='glossary', source='api/bengal/parsing/backends/patitas/directives/builtins/glossary.md'), Page(title='versioning', source='api/bengal/parsing/backends/patitas/directives/builtins/versioning.md'), Page(title='media', source='api/bengal/parsing/backends/patitas/directives/builtins/media.md'), Page(title='marimo', source='api/bengal/parsing/backends/patitas/directives/builtins/marimo.md'), Page(title='cards', source='api/bengal/parsing/backends/patitas/directives/builtins/cards.md'), Page(title='video', source='api/bengal/parsing/backends/patitas/directives/builtins/video.md'), Page(title='cards_utils', source='api/bengal/parsing/backends/patitas/directives/builtins/cards_utils.md'), Page(title='admonition', source='api/bengal/parsing/backends/patitas/directives/builtins/admonition.md'), Page(title='button', source='api/bengal/parsing/backends/patitas/directives/builtins/button.md'), Page(title='code_tabs', source='api/bengal/parsing/backends/patitas/directives/builtins/code_tabs.md'), Page(title='tables', source='api/bengal/parsing/backends/patitas/directives/builtins/tables.md'), Page(title='container', source='api/bengal/parsing/backends/patitas/directives/builtins/container.md'), Page(title='builtins', source='api/bengal/parsing/backends/patitas/directives/builtins.md'), Page(title='checklist', source='api/bengal/parsing/backends/patitas/directives/builtins/checklist.md'), Page(title='steps', source='api/bengal/parsing/backends/patitas/directives/builtins/steps.md'), Page(title='tabs', source='api/bengal/parsing/backends/patitas/directives/builtins/tabs.md'), Page(title='misc', source='api/bengal/parsing/backends/patitas/directives/builtins/misc.md'), Page(title='inline', source='api/bengal/parsing/backends/patitas/directives/builtins/inline.md'), Page(title='embed', source='api/bengal/parsing/backends/patitas/directives/builtins/embed.md'), Page(title='include', source='api/bengal/parsing/backends/patitas/directives/builtins/include.md'), Page(title='dropdown', source='api/bengal/parsing/backends/patitas/directives/builtins/dropdown.md'), Page(title='notification', source='api/bengal/server/live_reload/notification.md'), Page(title='injection', source='api/bengal/server/live_reload/injection.md'), Page(title='script', source='api/bengal/server/live_reload/script.md'), Page(title='fragment', source='api/bengal/server/live_reload/fragment.md'), Page(title='navigation', source='api/bengal/parsing/backends/patitas/directives/builtins/navigation.md'), Page(title='live_reload', source='api/bengal/server/live_reload.md'), Page(title='sse', source='api/bengal/server/live_reload/sse.md'), Page(title='handler', source='api/bengal/server/reactive/handler.md'), Page(title='reactive', source='api/bengal/server/reactive.md'), Page(title='mixin', source='api/bengal/server/live_reload/mixin.md'), Page(title='report', source='api/bengal/health/report.md'), Page(title='scoring', source='api/bengal/health/report/scoring.md'), Page(title='formatting', source='api/bengal/health/report/formatting.md'), Page(title='models', source='api/bengal/health/report/models.md'), Page(title='health_report', source='api/bengal/health/report/health_report.md'), Page(title='serialization', source='api/bengal/health/report/serialization.md'), Page(title='ownership_policy', source='api/bengal/health/validators/ownership_policy.md'), Page(title='connectivity', source='api/bengal/health/validators/connectivity.md'), Page(title='taxonomy', source='api/bengal/health/validators/taxonomy.md'), Page(title='cross_ref', source='api/bengal/health/validators/cross_ref.md'), Page(title='cache', source='api/bengal/health/validators/cache.md'), Page(title='rendering', source='api/bengal/health/validators/rendering.md'), Page(title='anchors', source='api/bengal/health/validators/anchors.md'), Page(title='links', source='api/bengal/health/validators/links.md'), Page(title='validators', source='api/bengal/health/validators.md'), Page(title='external_refs', source='api/bengal/health/validators/external_refs.md'), Page(title='fonts', source='api/bengal/health/validators/fonts.md'), Page(title='url_collisions', source='api/bengal/health/validators/url_collisions.md'), Page(title='assets', source='api/bengal/health/validators/assets.md'), Page(title='sitemap', source='api/bengal/health/validators/sitemap.md'), Page(title='config', source='api/bengal/health/validators/config.md'), Page(title='performance', source='api/bengal/health/validators/performance.md'), Page(title='tracks', source='api/bengal/health/validators/tracks.md'), Page(title='autodoc', source='api/bengal/health/validators/autodoc.md'), Page(title='accessibility', source='api/bengal/health/validators/accessibility.md'), Page(title='templates', source='api/bengal/health/validators/templates.md'), Page(title='rss', source='api/bengal/health/validators/rss.md'), Page(title='navigation', source='api/bengal/health/validators/navigation.md'), Page(title='output', source='api/bengal/health/validators/output.md'), Page(title='link_skip_rules', source='api/bengal/health/validators/link_skip_rules.md'), Page(title='menu', source='api/bengal/health/validators/menu.md'), Page(title='asset_urls', source='api/bengal/health/validators/asset_urls.md'), Page(title='remediation', source='api/bengal/health/remediation.md'), Page(title='models', source='api/bengal/health/linkcheck/models.md'), Page(title='ignore_policy', source='api/bengal/health/linkcheck/ignore_policy.md'), Page(title='autofix', source='api/bengal/health/remediation/autofix.md'), Page(title='linkcheck', source='api/bengal/health/linkcheck.md'), Page(title='orchestrator', source='api/bengal/health/linkcheck/orchestrator.md'), Page(title='internal_checker', source='api/bengal/health/linkcheck/internal_checker.md'), Page(title='async_checker', source='api/bengal/health/linkcheck/async_checker.md'), Page(title='checkers', source='api/bengal/health/validators/directives/checkers.md'), Page(title='directives', source='api/bengal/health/validators/directives.md'), Page(title='constants', source='api/bengal/health/validators/directives/constants.md'), Page(title='utils', source='api/bengal/postprocess/utils.md'), Page(title='page_data', source='api/bengal/postprocess/utils/page_data.md'), Page(title='xml', source='api/bengal/postprocess/utils/xml.md'), Page(title='llm_generator', source='api/bengal/postprocess/output_formats/llm_generator.md'), Page(title='base', source='api/bengal/postprocess/output_formats/base.md'), Page(title='analysis', source='api/bengal/health/validators/directives/analysis.md'), Page(title='agent_manifest_generator', source='api/bengal/postprocess/output_formats/agent_manifest_generator.md'), Page(title='utils', source='api/bengal/postprocess/output_formats/utils.md'), Page(title='lunr_index_generator', source='api/bengal/postprocess/output_formats/lunr_index_generator.md'), Page(title='index_generator', source='api/bengal/postprocess/output_formats/index_generator.md'), Page(title='output_formats', source='api/bengal/postprocess/output_formats.md'), Page(title='llms_txt_generator', source='api/bengal/postprocess/output_formats/llms_txt_generator.md'), Page(title='txt_generator', source='api/bengal/postprocess/output_formats/txt_generator.md'), Page(title='changelog_generator', source='api/bengal/postprocess/output_formats/changelog_generator.md'), Page(title='index_pages', source='api/bengal/autodoc/orchestration/index_pages.md'), Page(title='json_generator', source='api/bengal/postprocess/output_formats/json_generator.md'), Page(title='orchestration', source='api/bengal/autodoc/orchestration.md'), Page(title='page_builders', source='api/bengal/autodoc/orchestration/page_builders.md'), Page(title='orchestrator', source='api/bengal/autodoc/orchestration/orchestrator.md'), Page(title='section_builders', source='api/bengal/autodoc/orchestration/section_builders.md'), Page(title='extractors', source='api/bengal/autodoc/orchestration/extractors.md'), Page(title='result', source='api/bengal/autodoc/orchestration/result.md'), Page(title='paths', source='api/bengal/autodoc/utils/paths.md'), Page(title='utils', source='api/bengal/autodoc/utils.md'), Page(title='config', source='api/bengal/autodoc/utils/config.md'), Page(title='metadata', source='api/bengal/autodoc/utils/metadata.md'), Page(title='grouping', source='api/bengal/autodoc/utils/grouping.md'), Page(title='text', source='api/bengal/autodoc/utils/text.md'), Page(title='extractors', source='api/bengal/autodoc/extractors.md'), Page(title='openapi', source='api/bengal/autodoc/extractors/openapi.md'), Page(title='cli', source='api/bengal/autodoc/extractors/cli.md'), Page(title='common', source='api/bengal/autodoc/models/common.md'), Page(title='openapi', source='api/bengal/autodoc/models/openapi.md'), Page(title='models', source='api/bengal/autodoc/models.md'), Page(title='cli', source='api/bengal/autodoc/models/cli.md'), Page(title='skip_logic', source='api/bengal/autodoc/extractors/python/skip_logic.md'), Page(title='python', source='api/bengal/autodoc/models/python.md'), Page(title='module_info', source='api/bengal/autodoc/extractors/python/module_info.md'), Page(title='python', source='api/bengal/autodoc/extractors/python.md'), Page(title='signature', source='api/bengal/autodoc/extractors/python/signature.md'), Page(title='aliases', source='api/bengal/autodoc/extractors/python/aliases.md'), Page(title='inheritance', source='api/bengal/autodoc/extractors/python/inheritance.md'), Page(title='stats', source='api/bengal/cache/utils/stats.md'), Page(title='extractor', source='api/bengal/autodoc/extractors/python/extractor.md'), Page(title='utils', source='api/bengal/cache/utils.md'), Page(title='bidirectional', source='api/bengal/cache/utils/bidirectional.md'), Page(title='thread_safety', source='api/bengal/cache/utils/thread_safety.md'), Page(title='persistence', source='api/bengal/cache/utils/persistence.md'), Page(title='validity', source='api/bengal/cache/utils/validity.md'), Page(title='rendered_output_cache', source='api/bengal/cache/build_cache/rendered_output_cache.md'), Page(title='core', source='api/bengal/cache/build_cache/core.md'), Page(title='file_tracking', source='api/bengal/cache/build_cache/file_tracking.md'), Page(title='build_cache', source='api/bengal/cache/build_cache.md'), Page(title='autodoc_content_cache', source='api/bengal/cache/build_cache/autodoc_content_cache.md'), Page(title='validation_cache', source='api/bengal/cache/build_cache/validation_cache.md'), Page(title='taxonomy_index_mixin', source='api/bengal/cache/build_cache/taxonomy_index_mixin.md'), Page(title='parsed_content_cache', source='api/bengal/cache/build_cache/parsed_content_cache.md'), Page(title='fingerprint', source='api/bengal/cache/build_cache/fingerprint.md'), Page(title='section_index', source='api/bengal/cache/indexes/section_index.md'), Page(title='autodoc_tracking', source='api/bengal/cache/build_cache/autodoc_tracking.md'), Page(title='author_index', source='api/bengal/cache/indexes/author_index.md'), Page(title='indexes', source='api/bengal/cache/indexes.md'), Page(title='series_index', source='api/bengal/cache/indexes/series_index.md'), Page(title='date_range_index', source='api/bengal/cache/indexes/date_range_index.md'), Page(title='category_index', source='api/bengal/cache/indexes/category_index.md'), Page(title='pagination', source='api/bengal/utils/pagination.md'), Page(title='paginator', source='api/bengal/utils/pagination/paginator.md'), Page(title='code', source='api/bengal/utils/primitives/code.md'), Page(title='primitives', source='api/bengal/utils/primitives.md'), Page(title='dates', source='api/bengal/utils/primitives/dates.md'), Page(title='dotdict', source='api/bengal/utils/primitives/dotdict.md'), Page(title='hashing', source='api/bengal/utils/primitives/hashing.md'), Page(title='types', source='api/bengal/utils/primitives/types.md'), Page(title='lru_cache', source='api/bengal/utils/primitives/lru_cache.md'), Page(title='text', source='api/bengal/utils/primitives/text.md'), Page(title='dx', source='api/bengal/utils/dx.md'), Page(title='sentinel', source='api/bengal/utils/primitives/sentinel.md'), Page(title='detection', source='api/bengal/utils/dx/detection.md'), Page(title='hints', source='api/bengal/utils/dx/hints.md'), Page(title='atomic_write', source='api/bengal/utils/io/atomic_write.md'), Page(title='io', source='api/bengal/utils/io.md'), Page(title='file_lock', source='api/bengal/utils/io/file_lock.md'), Page(title='json_compat', source='api/bengal/utils/io/json_compat.md'), Page(title='async_compat', source='api/bengal/utils/concurrency/async_compat.md'), Page(title='file_io', source='api/bengal/utils/io/file_io.md'), Page(title='thread_local', source='api/bengal/utils/concurrency/thread_local.md'), Page(title='context_propagation', source='api/bengal/utils/concurrency/context_propagation.md'), Page(title='concurrency', source='api/bengal/utils/concurrency.md'), Page(title='concurrent_locks', source='api/bengal/utils/concurrency/concurrent_locks.md'), Page(title='workers', source='api/bengal/utils/concurrency/workers.md'), Page(title='gil', source='api/bengal/utils/concurrency/gil.md'), Page(title='retry', source='api/bengal/utils/concurrency/retry.md'), Page(title='rich_console', source='api/bengal/utils/observability/rich_console.md'), Page(title='observability', source='api/bengal/utils/observability/observability.md'), Page(title='logger', source='api/bengal/utils/observability/logger.md'), Page(title='observability', source='api/bengal/utils/observability.md'), Page(title='performance_collector', source='api/bengal/utils/observability/performance_collector.md'), Page(title='cli_progress', source='api/bengal/utils/observability/cli_progress.md'), Page(title='performance_report', source='api/bengal/utils/observability/performance_report.md'), Page(title='progress', source='api/bengal/utils/observability/progress.md'), Page(title='profile', source='api/bengal/utils/observability/profile.md'), Page(title='normalize', source='api/bengal/utils/paths/normalize.md'), Page(title='link_resolution', source='api/bengal/utils/paths/link_resolution.md'), Page(title='url_strategy', source='api/bengal/utils/paths/url_strategy.md'), Page(title='paths', source='api/bengal/utils/paths.md'), Page(title='paths', source='api/bengal/utils/paths/paths.md'), Page(title='path_resolver', source='api/bengal/utils/paths/path_resolver.md'), Page(title='url_normalization', source='api/bengal/utils/paths/url_normalization.md'), Page(title='output_collector_diagnostics', source='api/bengal/orchestration/render/output_collector_diagnostics.md'), Page(title='sequential', source='api/bengal/orchestration/render/sequential.md'), Page(title='orchestrator', source='api/bengal/orchestration/render/orchestrator.md'), Page(title='render', source='api/bengal/orchestration/render.md'), Page(title='pipeline_runner', source='api/bengal/orchestration/render/pipeline_runner.md'), Page(title='ordering', source='api/bengal/orchestration/render/ordering.md'), Page(title='parallel', source='api/bengal/orchestration/render/parallel.md'), Page(title='block_cache', source='api/bengal/orchestration/render/block_cache.md'), Page(title='tracking', source='api/bengal/orchestration/render/tracking.md'), Page(title='errors', source='api/bengal/orchestration/utils/errors.md'), Page(title='utils', source='api/bengal/orchestration/utils.md'), Page(title='virtual_pages', source='api/bengal/orchestration/utils/virtual_pages.md'), Page(title='i18n', source='api/bengal/orchestration/utils/i18n.md'), Page(title='parallel', source='api/bengal/orchestration/utils/parallel.md'), Page(title='cache_manager', source='api/bengal/orchestration/incremental/cache_manager.md'), Page(title='effect_detector', source='api/bengal/orchestration/incremental/effect_detector.md'), Page(title='cleanup', source='api/bengal/orchestration/incremental/cleanup.md'), Page(title='incremental', source='api/bengal/orchestration/incremental.md'), Page(title='orchestrator', source='api/bengal/orchestration/incremental/orchestrator.md'), Page(title='helpers', source='api/bengal/orchestration/stats/helpers.md'), Page(title='stats', source='api/bengal/orchestration/stats.md'), Page(title='models', source='api/bengal/orchestration/stats/models.md'), Page(title='warnings', source='api/bengal/orchestration/stats/warnings.md'), Page(title='display', source='api/bengal/orchestration/stats/display.md'), Page(title='menu_context', source='api/bengal/rendering/context/menu_context.md'), Page(title='data_wrappers', source='api/bengal/rendering/context/data_wrappers.md'), Page(title='site_wrappers', source='api/bengal/rendering/context/site_wrappers.md'), Page(title='data_tracking', source='api/bengal/rendering/context/data_tracking.md'), Page(title='context', source='api/bengal/rendering/context.md'), Page(title='template_engine', source='api/bengal/rendering/template_engine.md'), Page(title='lazy', source='api/bengal/rendering/context/lazy.md'), Page(title='manifest', source='api/bengal/rendering/template_engine/manifest.md'), Page(title='environment', source='api/bengal/rendering/template_engine/environment.md'), Page(title='url_helpers', source='api/bengal/rendering/template_engine/url_helpers.md'), Page(title='menu', source='api/bengal/rendering/template_engine/menu.md'), Page(title='asset_url', source='api/bengal/rendering/template_engine/asset_url.md'), Page(title='taxonomies', source='api/bengal/rendering/template_functions/taxonomies.md'), Page(title='icons', source='api/bengal/rendering/template_functions/icons.md'), Page(title='resources', source='api/bengal/rendering/template_functions/resources.md'), Page(title='version_url', source='api/bengal/rendering/template_functions/version_url.md'), Page(title='dates', source='api/bengal/rendering/template_functions/dates.md'), Page(title='content', source='api/bengal/rendering/template_functions/content.md'), Page(title='debug', source='api/bengal/rendering/template_functions/debug.md'), Page(title='advanced_collections', source='api/bengal/rendering/template_functions/advanced_collections.md'), Page(title='tables', source='api/bengal/rendering/template_functions/tables.md'), Page(title='sharing', source='api/bengal/rendering/template_functions/sharing.md'), Page(title='openapi', source='api/bengal/rendering/template_functions/openapi.md'), Page(title='files', source='api/bengal/rendering/template_functions/files.md'), Page(title='crossref', source='api/bengal/rendering/template_functions/crossref.md'), Page(title='template_functions', source='api/bengal/rendering/template_functions.md'), Page(title='external_refs', source='api/bengal/rendering/template_functions/external_refs.md'), Page(title='urls', source='api/bengal/rendering/template_functions/urls.md'), Page(title='collections', source='api/bengal/rendering/template_functions/collections.md'), Page(title='advanced_strings', source='api/bengal/rendering/template_functions/advanced_strings.md'), Page(title='theme', source='api/bengal/rendering/template_functions/theme.md'), Page(title='images', source='api/bengal/rendering/template_functions/images.md'), Page(title='seo', source='api/bengal/rendering/template_functions/seo.md'), Page(title='strings', source='api/bengal/rendering/template_functions/strings.md'), Page(title='autodoc', source='api/bengal/rendering/template_functions/autodoc.md'), Page(title='data', source='api/bengal/rendering/template_functions/data.md'), Page(title='math_functions', source='api/bengal/rendering/template_functions/math_functions.md'), Page(title='blog', source='api/bengal/rendering/template_functions/blog.md'), Page(title='get_page', source='api/bengal/rendering/template_functions/get_page.md'), Page(title='authors', source='api/bengal/rendering/template_functions/authors.md'), Page(title='changelog', source='api/bengal/rendering/template_functions/changelog.md'), Page(title='i18n', source='api/bengal/rendering/template_functions/i18n.md'), Page(title='memo', source='api/bengal/rendering/template_functions/memo.md'), Page(title='pagination_helpers', source='api/bengal/rendering/template_functions/pagination_helpers.md'), Page(title='utils', source='api/bengal/rendering/engines/utils.md'), Page(title='errors', source='api/bengal/rendering/engines/errors.md'), Page(title='protocol', source='api/bengal/rendering/engines/protocol.md'), Page(title='engines', source='api/bengal/rendering/engines.md'), Page(title='template_safe', source='api/bengal/rendering/utils/template_safe.md'), Page(title='utils', source='api/bengal/rendering/utils.md'), Page(title='url', source='api/bengal/rendering/utils/url.md'), Page(title='safe_access', source='api/bengal/rendering/utils/safe_access.md'), Page(title='contextvar', source='api/bengal/rendering/utils/contextvar.md'), Page(title='adapters', source='api/bengal/rendering/adapters.md'), Page(title='generic', source='api/bengal/rendering/adapters/generic.md'), Page(title='kida', source='api/bengal/rendering/adapters/kida.md'), Page(title='kida', source='api/bengal/rendering/engines/kida.md'), Page(title='external_refs', source='api/bengal/rendering/external_refs.md'), Page(title='term', source='api/bengal/rendering/plugins/term.md'), Page(title='variable_substitution', source='api/bengal/rendering/plugins/variable_substitution.md'), Page(title='plugins', source='api/bengal/rendering/plugins.md'), Page(title='resolver', source='api/bengal/rendering/external_refs/resolver.md'), Page(title='cross_references', source='api/bengal/rendering/plugins/cross_references.md'), Page(title='badges', source='api/bengal/rendering/plugins/badges.md'), Page(title='inline_icon', source='api/bengal/rendering/plugins/inline_icon.md'), Page(title='toc', source='api/bengal/rendering/pipeline/toc.md'), Page(title='thread_local', source='api/bengal/rendering/pipeline/thread_local.md'), Page(title='write_behind', source='api/bengal/rendering/pipeline/write_behind.md'), Page(title='transforms', source='api/bengal/rendering/pipeline/transforms.md'), Page(title='unified_transform', source='api/bengal/rendering/pipeline/unified_transform.md'), Page(title='pipeline', source='api/bengal/rendering/pipeline.md'), Page(title='cache_checker', source='api/bengal/rendering/pipeline/cache_checker.md'), Page(title='core', source='api/bengal/rendering/pipeline/core.md'), Page(title='json_accumulator', source='api/bengal/rendering/pipeline/json_accumulator.md'), Page(title='output', source='api/bengal/rendering/pipeline/output.md'), Page(title='profiler', source='api/bengal/rendering/pipeline/profiler.md'), Page(title='cache', source='api/bengal/rendering/highlighting/cache.md'), Page(title='autodoc_renderer', source='api/bengal/rendering/pipeline/autodoc_renderer.md'), Page(title='protocol', source='api/bengal/rendering/highlighting/protocol.md'), Page(title='theme_resolver', source='api/bengal/rendering/highlighting/theme_resolver.md'), Page(title='rosettes', source='api/bengal/rendering/highlighting/rosettes.md'), Page(title='highlighting', source='api/bengal/rendering/highlighting.md'), Page(title='errors', source='api/bengal/rendering/errors.md'), Page(title='deferred', source='api/bengal/rendering/highlighting/deferred.md'), Page(title='display', source='api/bengal/rendering/errors/display.md'), Page(title='exceptions', source='api/bengal/rendering/errors/exceptions.md'), Page(title='context', source='api/bengal/rendering/errors/context.md'), Page(title='deduplication', source='api/bengal/rendering/errors/deduplication.md'), Page(title='tree', source='api/bengal/rendering/template_functions/navigation/tree.md'), Page(title='toc', source='api/bengal/rendering/template_functions/navigation/toc.md'), Page(title='models', source='api/bengal/rendering/template_functions/navigation/models.md'), Page(title='scaffold', source='api/bengal/rendering/template_functions/navigation/scaffold.md'), Page(title='helpers', source='api/bengal/rendering/template_functions/navigation/helpers.md'), Page(title='breadcrumbs', source='api/bengal/rendering/template_functions/navigation/breadcrumbs.md'), Page(title='pagination', source='api/bengal/rendering/template_functions/navigation/pagination.md'), Page(title='auto_nav', source='api/bengal/rendering/template_functions/navigation/auto_nav.md'), Page(title='navigation', source='api/bengal/rendering/template_functions/navigation.md'), Page(title='blog', source='api/bengal/scaffolds/blog.md'), Page(title='section', source='api/bengal/rendering/template_functions/navigation/section.md'), Page(title='default', source='api/bengal/scaffolds/default.md'), Page(title='template', source='api/bengal/scaffolds/blog/template.md'), Page(title='changelog', source='api/bengal/scaffolds/changelog.md'), Page(title='template', source='api/bengal/scaffolds/default/template.md'), Page(title='portfolio', source='api/bengal/scaffolds/portfolio.md'), Page(title='template', source='api/bengal/scaffolds/changelog/template.md'), Page(title='resume', source='api/bengal/scaffolds/resume.md'), Page(title='template', source='api/bengal/scaffolds/resume/template.md'), Page(title='template', source='api/bengal/scaffolds/portfolio/template.md'), Page(title='docs', source='api/bengal/scaffolds/docs.md'), Page(title='product', source='api/bengal/scaffolds/product.md'), Page(title='template', source='api/bengal/scaffolds/docs/template.md'), Page(title='landing', source='api/bengal/scaffolds/landing.md'), Page(title='template', source='api/bengal/scaffolds/product/template.md'), Page(title='template', source='api/bengal/scaffolds/landing/template.md'), Page(title='skeleton', source='api/bengal/cli/skeleton.md'), Page(title='schema', source='api/bengal/cli/skeleton/schema.md'), Page(title='hydrator', source='api/bengal/cli/skeleton/hydrator.md'), Page(title='messages', source='api/bengal/cli/dashboard/messages.md'), Page(title='base', source='api/bengal/cli/dashboard/base.md'), Page(title='dashboard', source='api/bengal/cli/dashboard.md'), Page(title='serve', source='api/bengal/cli/dashboard/serve.md'), Page(title='app', source='api/bengal/cli/dashboard/app.md'), Page(title='screens', source='api/bengal/cli/dashboard/screens.md'), Page(title='commands', source='api/bengal/cli/dashboard/commands.md'), Page(title='build', source='api/bengal/cli/dashboard/build.md'), Page(title='notifications', source='api/bengal/cli/dashboard/notifications.md'), Page(title='__main__', source='api/bengal/cli/dashboard/__main__.md'), Page(title='health', source='api/bengal/cli/dashboard/health.md'), Page(title='sources', source='api/bengal/cli/commands/sources.md'), Page(title='site', source='api/bengal/cli/commands/site.md'), Page(title='version', source='api/bengal/cli/commands/version.md'), Page(title='cache', source='api/bengal/cli/commands/cache.md'), Page(title='project', source='api/bengal/cli/commands/project.md'), Page(title='utils', source='api/bengal/cli/commands/utils.md'), Page(title='debug', source='api/bengal/cli/commands/debug.md'), Page(title='commands', source='api/bengal/cli/commands.md'), Page(title='fix', source='api/bengal/cli/commands/fix.md'), Page(title='explain', source='api/bengal/cli/commands/explain.md'), Page(title='validate', source='api/bengal/cli/commands/validate.md'), Page(title='assets', source='api/bengal/cli/commands/assets.md'), Page(title='collections', source='api/bengal/cli/commands/collections.md'), Page(title='engine', source='api/bengal/cli/commands/engine.md'), Page(title='serve', source='api/bengal/cli/commands/serve.md'), Page(title='init', source='api/bengal/cli/commands/init.md'), Page(title='provenance', source='api/bengal/cli/commands/provenance.md'), Page(title='codemod', source='api/bengal/cli/commands/codemod.md'), Page(title='config', source='api/bengal/cli/commands/config.md'), Page(title='skeleton', source='api/bengal/cli/commands/skeleton.md'), Page(title='build', source='api/bengal/cli/commands/build.md'), Page(title='perf', source='api/bengal/cli/commands/perf.md'), Page(title='theme', source='api/bengal/cli/commands/theme.md'), Page(title='shortcodes', source='api/bengal/cli/commands/shortcodes.md'), Page(title='i18n', source='api/bengal/cli/commands/i18n.md'), Page(title='clean', source='api/bengal/cli/commands/clean.md'), Page(title='health', source='api/bengal/cli/commands/health.md'), Page(title='errors', source='api/bengal/cli/utils/errors.md'), Page(title='traceback', source='api/bengal/cli/utils/traceback.md'), Page(title='paths', source='api/bengal/cli/utils/paths.md'), Page(title='utils', source='api/bengal/cli/utils.md'), Page(title='site', source='api/bengal/cli/utils/site.md'), Page(title='logging', source='api/bengal/cli/utils/logging.md'), Page(title='validation', source='api/bengal/cli/utils/validation.md'), Page(title='output', source='api/bengal/cli/utils/output.md'), Page(title='config_validation', source='api/bengal/cli/helpers/config_validation.md'), Page(title='cli_app_loader', source='api/bengal/cli/helpers/cli_app_loader.md'), Page(title='error_handling', source='api/bengal/cli/helpers/error_handling.md'), Page(title='helpers', source='api/bengal/cli/helpers.md'), Page(title='menu_config', source='api/bengal/cli/helpers/menu_config.md'), Page(title='progress', source='api/bengal/cli/helpers/progress.md'), Page(title='metadata', source='api/bengal/cli/helpers/metadata.md'), Page(title='suggest', source='api/bengal/cli/commands/graph/suggest.md'), Page(title='pagerank', source='api/bengal/cli/commands/graph/pagerank.md'), Page(title='report', source='api/bengal/cli/commands/graph/report.md'), Page(title='bridges', source='api/bengal/cli/commands/graph/bridges.md'), Page(title='__main__', source='api/bengal/cli/commands/graph/__main__.md'), Page(title='communities', source='api/bengal/cli/commands/graph/communities.md'), Page(title='orphans', source='api/bengal/cli/commands/graph/orphans.md'), Page(title='installers', source='api/bengal/cli/commands/upgrade/installers.md'), Page(title='command', source='api/bengal/cli/commands/upgrade/command.md'), Page(title='upgrade', source='api/bengal/cli/commands/upgrade.md'), Page(title='check', source='api/bengal/cli/commands/upgrade/check.md'), Page(title='new', source='api/bengal/cli/commands/new.md'), Page(title='site', source='api/bengal/cli/commands/new/site.md'), Page(title='presets', source='api/bengal/cli/commands/new/presets.md'), Page(title='scaffolds', source='api/bengal/cli/commands/new/scaffolds.md'), Page(title='config', source='api/bengal/cli/commands/new/config.md'), Page(title='wizard', source='api/bengal/cli/commands/new/wizard.md'), Page(title='asset_explorer', source='api/bengal/cli/dashboard/widgets/asset_explorer.md'), Page(title='request_log', source='api/bengal/cli/dashboard/widgets/request_log.md'), Page(title='phase_progress', source='api/bengal/cli/dashboard/widgets/phase_progress.md'), Page(title='content_browser', source='api/bengal/cli/dashboard/widgets/content_browser.md'), Page(title='phase_plan', source='api/bengal/cli/dashboard/widgets/phase_plan.md'), Page(title='widgets', source='api/bengal/cli/dashboard/widgets.md'), Page(title='quick_action', source='api/bengal/cli/dashboard/widgets/quick_action.md'), Page(title='taxonomy_explorer', source='api/bengal/cli/dashboard/widgets/taxonomy_explorer.md'), Page(title='file_watcher_log', source='api/bengal/cli/dashboard/widgets/file_watcher_log.md'), Page(title='flash', source='api/bengal/cli/dashboard/widgets/flash.md'), Page(title='throbber', source='api/bengal/cli/dashboard/widgets/throbber.md'), Page(title='css_manifest', source='api/bengal/themes/default/css_manifest.md'), Page(title='css', source='api/bengal/assets/css.md'), Page(title='analyze', source='cli/analyze.md'), Page(title='assets', source='cli/assets.md'), Page(title='build', source='cli/assets/build.md'), Page(title='status', source='cli/assets/status.md'), Page(title='build', source='cli/build.md'), Page(title='clean', source='cli/clean.md'), Page(title='cache', source='cli/cache.md'), Page(title='hash', source='cli/cache/hash.md'), Page(title='inputs', source='cli/cache/inputs.md'), Page(title='validate', source='cli/validate.md'), Page(title='collections', source='cli/collections.md'), Page(title='init', source='cli/collections/init.md'), Page(title='list', source='cli/collections/list.md'), Page(title='validate', source='cli/collections/validate.md'), Page(title='config', source='cli/config.md'), Page(title='diff', source='cli/config/diff.md'), Page(title='doctor', source='cli/config/doctor.md'), Page(title='init', source='cli/config/init.md'), Page(title='show', source='cli/config/show.md'), Page(title='debug', source='cli/debug.md'), Page(title='config-inspect', source='cli/debug/config-inspect.md'), Page(title='delta', source='cli/debug/delta.md'), Page(title='deps', source='cli/debug/deps.md'), Page(title='incremental', source='cli/debug/incremental.md'), Page(title='migrate', source='cli/debug/migrate.md'), Page(title='sandbox', source='cli/debug/sandbox.md'), Page(title='serve', source='cli/serve.md'), Page(title='engine', source='cli/engine.md'), Page(title='info', source='cli/engine/info.md'), Page(title='list', source='cli/engine/list.md'), Page(title='explain', source='cli/explain.md'), Page(title='fix', source='cli/fix.md'), Page(title='graph', source='cli/graph.md'), Page(title='analyze', source='cli/graph/analyze.md'), Page(title='bridges', source='cli/graph/bridges.md'), Page(title='communities', source='cli/graph/communities.md'), Page(title='orphans', source='cli/graph/orphans.md'), Page(title='pagerank', source='cli/graph/pagerank.md'), Page(title='report', source='cli/graph/report.md'), Page(title='suggest', source='cli/graph/suggest.md'), Page(title='health', source='cli/health.md'), Page(title='linkcheck', source='cli/health/linkcheck.md'), Page(title='i18n', source='cli/i18n.md'), Page(title='compile', source='cli/i18n/compile.md'), Page(title='extract', source='cli/i18n/extract.md'), Page(title='status', source='cli/i18n/status.md'), Page(title='new', source='cli/new.md'), Page(title='layout', source='cli/new/layout.md'), Page(title='page', source='cli/new/page.md'), Page(title='partial', source='cli/new/partial.md'), Page(title='site', source='cli/new/site.md'), Page(title='theme', source='cli/new/theme.md'), Page(title='project', source='cli/project.md'), Page(title='config', source='cli/project/config.md'), Page(title='info', source='cli/project/info.md'), Page(title='init', source='cli/project/init.md'), Page(title='profile', source='cli/project/profile.md'), Page(title='skeleton', source='cli/project/skeleton.md'), Page(title='apply', source='cli/project/skeleton/apply.md'), Page(title='validate', source='cli/project/validate.md'), Page(title='provenance', source='cli/provenance.md'), Page(title='affected', source='cli/provenance/affected.md'), Page(title='build', source='cli/provenance/build.md'), Page(title='clear', source='cli/provenance/clear.md'), Page(title='lineage', source='cli/provenance/lineage.md'), Page(title='stats', source='cli/provenance/stats.md'), Page(title='shortcodes', source='cli/shortcodes.md'), Page(title='list', source='cli/shortcodes/list.md'), Page(title='site', source='cli/site.md'), Page(title='build', source='cli/site/build.md'), Page(title='clean', source='cli/site/clean.md'), Page(title='serve', source='cli/site/serve.md'), Page(title='sources', source='cli/sources.md'), Page(title='clear', source='cli/sources/clear.md'), Page(title='fetch', source='cli/sources/fetch.md'), Page(title='list', source='cli/sources/list.md'), Page(title='status', source='cli/sources/status.md'), Page(title='theme', source='cli/theme.md'), Page(title='debug', source='cli/theme/debug.md'), Page(title='discover', source='cli/theme/discover.md'), Page(title='info', source='cli/theme/info.md'), Page(title='install', source='cli/theme/install.md'), Page(title='list', source='cli/theme/list.md'), Page(title='new', source='cli/theme/new.md'), Page(title='swizzle', source='cli/theme/swizzle.md'), Page(title='swizzle-list', source='cli/theme/swizzle-list.md'), Page(title='swizzle-update', source='cli/theme/swizzle-update.md'), Page(title='upgrade', source='cli/upgrade.md'), Page(title='utils', source='cli/utils.md'), Page(title='assets', source='cli/utils/assets.md'), Page(title='build', source='cli/utils/assets/build.md'), Page(title='status', source='cli/utils/assets/status.md'), Page(title='codemod', source='cli/utils/codemod.md'), Page(title='urls', source='cli/utils/codemod/urls.md'), Page(title='graph', source='cli/utils/graph.md'), Page(title='analyze', source='cli/utils/graph/analyze.md'), Page(title='bridges', source='cli/utils/graph/bridges.md'), Page(title='communities', source='cli/utils/graph/communities.md'), Page(title='orphans', source='cli/utils/graph/orphans.md'), Page(title='pagerank', source='cli/utils/graph/pagerank.md'), Page(title='report', source='cli/utils/graph/report.md'), Page(title='suggest', source='cli/utils/graph/suggest.md'), Page(title='perf', source='cli/utils/perf.md'), Page(title='theme', source='cli/utils/theme.md'), Page(title='debug', source='cli/utils/theme/debug.md'), Page(title='discover', source='cli/utils/theme/discover.md'), Page(title='info', source='cli/utils/theme/info.md'), Page(title='install', source='cli/utils/theme/install.md'), Page(title='list', source='cli/utils/theme/list.md'), Page(title='new', source='cli/utils/theme/new.md'), Page(title='swizzle', source='cli/utils/theme/swizzle.md'), Page(title='swizzle-list', source='cli/utils/theme/swizzle-list.md'), Page(title='swizzle-update', source='cli/utils/theme/swizzle-update.md'), Page(title='version', source='cli/version.md'), Page(title='create', source='cli/version/create.md'), Page(title='diff', source='cli/version/diff.md'), Page(title='info', source='cli/version/info.md'), Page(title='list', source='cli/version/list.md'), Page(title='BaseResource', source='api/bengal-demo-commerce/schemas/BaseResource.md'), Page(title='UserBase', source='api/bengal-demo-commerce/schemas/UserBase.md'), Page(title='User', source='api/bengal-demo-commerce/schemas/User.md'), Page(title='UserCreate', source='api/bengal-demo-commerce/schemas/UserCreate.md'), Page(title='UserUpdate', source='api/bengal-demo-commerce/schemas/UserUpdate.md'), Page(title='Address', source='api/bengal-demo-commerce/schemas/Address.md'), Page(title='SessionCreate', source='api/bengal-demo-commerce/schemas/SessionCreate.md'), Page(title='SessionToken', source='api/bengal-demo-commerce/schemas/SessionToken.md'), Page(title='OrderStatus', source='api/bengal-demo-commerce/schemas/OrderStatus.md'), Page(title='Money', source='api/bengal-demo-commerce/schemas/Money.md'), Page(title='OrderLineItem', source='api/bengal-demo-commerce/schemas/OrderLineItem.md'), Page(title='Order', source='api/bengal-demo-commerce/schemas/Order.md'), Page(title='OrderCreate', source='api/bengal-demo-commerce/schemas/OrderCreate.md'), Page(title='OrderUpdate', source='api/bengal-demo-commerce/schemas/OrderUpdate.md'), Page(title='PaginatedUserList', source='api/bengal-demo-commerce/schemas/PaginatedUserList.md'), Page(title='PaginatedOrderList', source='api/bengal-demo-commerce/schemas/PaginatedOrderList.md'), Page(title='PaymentMethodCard', source='api/bengal-demo-commerce/schemas/PaymentMethodCard.md'), Page(title='PaymentMethodBank', source='api/bengal-demo-commerce/schemas/PaymentMethodBank.md'), Page(title='PaymentRequest', source='api/bengal-demo-commerce/schemas/PaymentRequest.md'), Page(title='Payment', source='api/bengal-demo-commerce/schemas/Payment.md'), Page(title='PaymentFailure', source='api/bengal-demo-commerce/schemas/PaymentFailure.md'), Page(title='InventoryItem', source='api/bengal-demo-commerce/schemas/InventoryItem.md'), Page(title='ErrorResponse', source='api/bengal-demo-commerce/schemas/ErrorResponse.md'), Page(title='Bengal API Reference', source='__virtual__/api/bengal/section-index.md'), Page(title='Graph', source='__virtual__/api/bengal/cli/commands/graph/section-index.md'), Page(title='Default', source='__virtual__/api/bengal/themes/default/section-index.md'), Page(title='Bengal CLI Reference', source='__virtual__/cli/section-index.md'), Page(title='REST API Reference', source='__virtual__/api/bengal-demo-commerce/section-index.md'), Page(title='Schemas', source='__virtual__/api/bengal-demo-commerce/schemas/section-index.md'), Page(title='Users', source='__virtual__/api/bengal-demo-commerce/tags/users/section-index.md'), Page(title='Orders', source='__virtual__/api/bengal-demo-commerce/tags/orders/section-index.md'), Page(title='Payments', source='__virtual__/api/bengal-demo-commerce/tags/payments/section-index.md'), Page(title='Inventory', source='__virtual__/api/bengal-demo-commerce/tags/inventory/section-index.md'), Page(title='Api Documentation', source='__virtual__/api/section-index.md'), Page(title='All Tags', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/index.md'), Page(title='Posts tagged 'steps'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/steps/page_1/index.md'), Page(title='Posts tagged 'jekyll'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/jekyll/page_1/index.md'), Page(title='Posts tagged 'cli'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/cli/page_1/index.md'), Page(title='Posts tagged 'design-principles'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/design-principles/page_1/index.md'), Page(title='Posts tagged 'taxonomies'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/taxonomies/page_1/index.md'), Page(title='Posts tagged 'alpha'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/alpha/page_1/index.md'), Page(title='Posts tagged 'examples'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/examples/page_1/index.md'), Page(title='Posts tagged 'integration-tests'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/integration-tests/page_1/index.md'), Page(title='Posts tagged 'interfaces'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/interfaces/page_1/index.md'), Page(title='Posts tagged 'docusaurus'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/docusaurus/page_1/index.md'), Page(title='Posts tagged 'skeleton'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/skeleton/page_1/index.md'), Page(title='Posts tagged 'video'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/video/page_1/index.md'), Page(title='Posts tagged 'installation'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/installation/page_1/index.md'), Page(title='Posts tagged 'views'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/views/page_1/index.md'), Page(title='Posts tagged 'connectivity'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/connectivity/page_1/index.md'), Page(title='Posts tagged 'responsive'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/responsive/page_1/index.md'), Page(title='Posts tagged 'sources'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/sources/page_1/index.md'), Page(title='Posts tagged 'support'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/support/page_1/index.md'), Page(title='Posts tagged 'ci-cd'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/ci-cd/page_1/index.md'), Page(title='Posts tagged 'compression'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/compression/page_1/index.md'), Page(title='Posts tagged 'cookbook'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/cookbook/page_1/index.md'), Page(title='Posts tagged 'cookbook'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/cookbook/page_2/index.md'), Page(title='Posts tagged 'vimeo'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/vimeo/page_1/index.md'), Page(title='Posts tagged 'writing'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/writing/page_1/index.md'), Page(title='Posts tagged 'literalinclude'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/literalinclude/page_1/index.md'), Page(title='Posts tagged 'development'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/development/page_1/index.md'), Page(title='Posts tagged 'page'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/page/page_1/index.md'), Page(title='Posts tagged 'terminal'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/terminal/page_1/index.md'), Page(title='Posts tagged 'release'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/release/page_1/index.md'), Page(title='Posts tagged 'release'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/release/page_2/index.md'), Page(title='Posts tagged 'youtube'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/youtube/page_1/index.md'), Page(title='Posts tagged 'health-checks'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/health-checks/page_1/index.md'), Page(title='Posts tagged 'debug'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/debug/page_1/index.md'), Page(title='Posts tagged 'intermediate'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/intermediate/page_1/index.md'), Page(title='Posts tagged 'api'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/api/page_1/index.md'), Page(title='Posts tagged 'mintlify'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/mintlify/page_1/index.md'), Page(title='Posts tagged 'build-pipeline'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/build-pipeline/page_1/index.md'), Page(title='Posts tagged 'compression.zstd (Python 3.14+ stdlib)'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/compression.zstd-(python-3.14+-stdlib)/page_1/index.md'), Page(title='Posts tagged 'linking'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/linking/page_1/index.md'), Page(title='Posts tagged 'variables'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/variables/page_1/index.md'), Page(title='Posts tagged 'functions'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/functions/page_1/index.md'), Page(title='Posts tagged 'hugo'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/hugo/page_1/index.md'), Page(title='Posts tagged 'python'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/python/page_1/index.md'), Page(title='Posts tagged 'images'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/images/page_1/index.md'), Page(title='Posts tagged 'excerpt'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/excerpt/page_1/index.md'), Page(title='Posts tagged 'validators'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/validators/page_1/index.md'), Page(title='Posts tagged 'file-organization'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/file-organization/page_1/index.md'), Page(title='Posts tagged 'sharing'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/sharing/page_1/index.md'), Page(title='Posts tagged 'sort'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/sort/page_1/index.md'), Page(title='Posts tagged 'plugins'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/plugins/page_1/index.md'), Page(title='Posts tagged 'community-detection'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/community-detection/page_1/index.md'), Page(title='Posts tagged 'math'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/math/page_1/index.md'), Page(title='Posts tagged 'analysis'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/analysis/page_1/index.md'), Page(title='Posts tagged 'search'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/search/page_1/index.md'), Page(title='Posts tagged 'phases'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/phases/page_1/index.md'), Page(title='Posts tagged 'computed-properties'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/computed-properties/page_1/index.md'), Page(title='Posts tagged 'parsing'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/parsing/page_1/index.md'), Page(title='Posts tagged 'production'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/production/page_1/index.md'), Page(title='Posts tagged 'patterns'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/patterns/page_1/index.md'), Page(title='Posts tagged 'freshness'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/freshness/page_1/index.md'), Page(title='Posts tagged 'ecosystem'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/ecosystem/page_1/index.md'), Page(title='Posts tagged 'fonts'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/fonts/page_1/index.md'), Page(title='Posts tagged 'build'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/build/page_1/index.md'), Page(title='Posts tagged 'orchestration'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/orchestration/page_1/index.md'), Page(title='Posts tagged 'tooling'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/tooling/page_1/index.md'), Page(title='Posts tagged 'optimization'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/optimization/page_1/index.md'), Page(title='Posts tagged 'troubleshooting'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/troubleshooting/page_1/index.md'), Page(title='Posts tagged 'extension-points'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/extension-points/page_1/index.md'), Page(title='Posts tagged 'help'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/help/page_1/index.md'), Page(title='Posts tagged 'constraints'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/constraints/page_1/index.md'), Page(title='Posts tagged 'test-strategy'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/test-strategy/page_1/index.md'), Page(title='Posts tagged 'byline'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/byline/page_1/index.md'), Page(title='Posts tagged 'github-pages'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/github-pages/page_1/index.md'), Page(title='Posts tagged 'asset'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/asset/page_1/index.md'), Page(title='Posts tagged 'profiles'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/profiles/page_1/index.md'), Page(title='Posts tagged 'intersphinx'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/intersphinx/page_1/index.md'), Page(title='Posts tagged 'helpers'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/helpers/page_1/index.md'), Page(title='Posts tagged 'scaffolding'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/scaffolding/page_1/index.md'), Page(title='Posts tagged 'schemas'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/schemas/page_1/index.md'), Page(title='Posts tagged 'extensibility'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/extensibility/page_1/index.md'), Page(title='Posts tagged 'soundcloud'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/soundcloud/page_1/index.md'), Page(title='Posts tagged 'text'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/text/page_1/index.md'), Page(title='Posts tagged 'data'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/data/page_1/index.md'), Page(title='Posts tagged 'filters'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/filters/page_1/index.md'), Page(title='Posts tagged 'filters'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/filters/page_2/index.md'), Page(title='Posts tagged 'file-io'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/file-io/page_1/index.md'), Page(title='Posts tagged 'config'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/config/page_1/index.md'), Page(title='Posts tagged 'philosophy'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/philosophy/page_1/index.md'), Page(title='Posts tagged 'api-docs'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/api-docs/page_1/index.md'), Page(title='Posts tagged 'multilingual'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/multilingual/page_1/index.md'), Page(title='Posts tagged 'incremental-builds'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/incremental-builds/page_1/index.md'), Page(title='Posts tagged 'tiktok'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/tiktok/page_1/index.md'), Page(title='Posts tagged 'themes'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/themes/page_1/index.md'), Page(title='Posts tagged 'design'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/design/page_1/index.md'), Page(title='Posts tagged 'errors'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/errors/page_1/index.md'), Page(title='Posts tagged 'interactive'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/interactive/page_1/index.md'), Page(title='Posts tagged 'hotfix'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/hotfix/page_1/index.md'), Page(title='Posts tagged 'protocols'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/protocols/page_1/index.md'), Page(title='Posts tagged 'statistics'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/statistics/page_1/index.md'), Page(title='Posts tagged 'glossary'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/glossary/page_1/index.md'), Page(title='Posts tagged 'toc'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/toc/page_1/index.md'), Page(title='Posts tagged 'admonitions'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/admonitions/page_1/index.md'), Page(title='Posts tagged 'tags'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/tags/page_1/index.md'), Page(title='Posts tagged 'content-types'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/content-types/page_1/index.md'), Page(title='Posts tagged 'extending'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/extending/page_1/index.md'), Page(title='Posts tagged 'group_by'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/group_by/page_1/index.md'), Page(title='Posts tagged 'migration'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/migration/page_1/index.md'), Page(title='Posts tagged 'data-table'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/data-table/page_1/index.md'), Page(title='Posts tagged 'sdk'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/sdk/page_1/index.md'), Page(title='Posts tagged 'architecture'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/architecture/page_1/index.md'), Page(title='Posts tagged 'file-watching'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/file-watching/page_1/index.md'), Page(title='Posts tagged 'properties'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/properties/page_1/index.md'), Page(title='Posts tagged 'collections'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/collections/page_1/index.md'), Page(title='Posts tagged 'incremental'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/incremental/page_1/index.md'), Page(title='Posts tagged 'site'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/site/page_1/index.md'), Page(title='Posts tagged 'dates'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/dates/page_1/index.md'), Page(title='Posts tagged 'components'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/components/page_1/index.md'), Page(title='Posts tagged 'shortcodes'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/shortcodes/page_1/index.md'), Page(title='Posts tagged 'code-generation'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/code-generation/page_1/index.md'), Page(title='Posts tagged 'utilities'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/utilities/page_1/index.md'), Page(title='Posts tagged 'utils'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/utils/page_1/index.md'), Page(title='Posts tagged 'rss'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/rss/page_1/index.md'), Page(title='Posts tagged 'rosettes'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/rosettes/page_1/index.md'), Page(title='Posts tagged 'notebook'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/notebook/page_1/index.md'), Page(title='Posts tagged 'taxonomy'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/taxonomy/page_1/index.md'), Page(title='Posts tagged 'react'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/react/page_1/index.md'), Page(title='Posts tagged 'validation'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/validation/page_1/index.md'), Page(title='Posts tagged 'compatibility'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/compatibility/page_1/index.md'), Page(title='Posts tagged 'remote'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/remote/page_1/index.md'), Page(title='Posts tagged 'postprocess'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/postprocess/page_1/index.md'), Page(title='Posts tagged 'graph-analysis'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/graph-analysis/page_1/index.md'), Page(title='Posts tagged 'notion'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/notion/page_1/index.md'), Page(title='Posts tagged 'highlighting'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/highlighting/page_1/index.md'), Page(title='Posts tagged 'diagnostics'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/diagnostics/page_1/index.md'), Page(title='Posts tagged 'how-to'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/how-to/page_1/index.md'), Page(title='Posts tagged 'getting-started'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/getting-started/page_1/index.md'), Page(title='Posts tagged 'data-models'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/data-models/page_1/index.md'), Page(title='Posts tagged 'theme'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/theme/page_1/index.md'), Page(title='Posts tagged 'theming'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/theming/page_1/index.md'), Page(title='Posts tagged 'server'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/server/page_1/index.md'), Page(title='Posts tagged 'best-practices'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/best-practices/page_1/index.md'), Page(title='Posts tagged 'link-suggestions'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/link-suggestions/page_1/index.md'), Page(title='Posts tagged 'dev-server'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/dev-server/page_1/index.md'), Page(title='Posts tagged 'commands'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/commands/page_1/index.md'), Page(title='Posts tagged 'posts'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/posts/page_1/index.md'), Page(title='Posts tagged 'author'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/author/page_1/index.md'), Page(title='Posts tagged 'series'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/series/page_1/index.md'), Page(title='Posts tagged 'assets'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/assets/page_1/index.md'), Page(title='Posts tagged 'automation'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/automation/page_1/index.md'), Page(title='Posts tagged 'live-reload'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/live-reload/page_1/index.md'), Page(title='Posts tagged 'setup'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/setup/page_1/index.md'), Page(title='Posts tagged 'cms'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/cms/page_1/index.md'), Page(title='Posts tagged 'pipeline'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/pipeline/page_1/index.md'), Page(title='Posts tagged 'featured'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/featured/page_1/index.md'), Page(title='Posts tagged 'bug fixes'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/bug-fixes/page_1/index.md'), Page(title='Posts tagged 'github'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/github/page_1/index.md'), Page(title='Posts tagged 'advanced'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/advanced/page_1/index.md'), Page(title='Posts tagged 'prek'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/prek/page_1/index.md'), Page(title='Posts tagged 'faq'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/faq/page_1/index.md'), Page(title='Posts tagged 'jinja'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/jinja/page_1/index.md'), Page(title='Posts tagged 'latex'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/latex/page_1/index.md'), Page(title='Posts tagged 'auto-fix'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/auto-fix/page_1/index.md'), Page(title='Posts tagged 'command-line'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/command-line/page_1/index.md'), Page(title='Posts tagged 'pagerank'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/pagerank/page_1/index.md'), Page(title='Posts tagged 'google-fonts'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/google-fonts/page_1/index.md'), Page(title='Posts tagged 'dependency-tracking'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/dependency-tracking/page_1/index.md'), Page(title='Posts tagged 'code-tabs'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/code-tabs/page_1/index.md'), Page(title='Posts tagged 'dx'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/dx/page_1/index.md'), Page(title='Posts tagged 'sphinx'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/sphinx/page_1/index.md'), Page(title='Posts tagged 'thread-safety'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/thread-safety/page_1/index.md'), Page(title='Posts tagged 'unit-tests'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/unit-tests/page_1/index.md'), Page(title='Posts tagged 'data-flow'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/data-flow/page_1/index.md'), Page(title='Posts tagged 'social'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/social/page_1/index.md'), Page(title='Posts tagged 'yaml'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/yaml/page_1/index.md'), Page(title='Posts tagged 'build-outputs'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/build-outputs/page_1/index.md'), Page(title='Posts tagged 'privacy'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/privacy/page_1/index.md'), Page(title='Posts tagged 'where'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/where/page_1/index.md'), Page(title='Posts tagged 'sitemap'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/sitemap/page_1/index.md'), Page(title='Posts tagged 'configuration'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/configuration/page_1/index.md'), Page(title='Posts tagged 'documentation'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/documentation/page_1/index.md'), Page(title='Posts tagged 'tabs'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/tabs/page_1/index.md'), Page(title='Posts tagged 'deployment'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/deployment/page_1/index.md'), Page(title='Posts tagged 'translation'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/translation/page_1/index.md'), Page(title='Posts tagged 'mkdocs'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/mkdocs/page_1/index.md'), Page(title='Posts tagged 'kida'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/kida/page_1/index.md'), Page(title='Posts tagged 'kida'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/kida/page_2/index.md'), Page(title='Posts tagged 'include'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/include/page_1/index.md'), Page(title='Posts tagged 'archive'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/archive/page_1/index.md'), Page(title='Posts tagged 'overview'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/overview/page_1/index.md'), Page(title='Posts tagged 'large-sites'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/large-sites/page_1/index.md'), Page(title='Posts tagged 'quickstart'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/quickstart/page_1/index.md'), Page(title='Posts tagged 'section'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/section/page_1/index.md'), Page(title='Posts tagged 'contracts'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/contracts/page_1/index.md'), Page(title='Posts tagged 'rst'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/rst/page_1/index.md'), Page(title='Posts tagged 'fixes'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/fixes/page_1/index.md'), Page(title='Posts tagged 'pounce'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/pounce/page_1/index.md'), Page(title='Posts tagged 'hardening'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/hardening/page_1/index.md'), Page(title='Posts tagged 'fern'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/fern/page_1/index.md'), Page(title='Posts tagged 'process-flow'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/process-flow/page_1/index.md'), Page(title='Posts tagged 'onboarding'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/onboarding/page_1/index.md'), Page(title='Posts tagged 'content signals'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/content-signals/page_1/index.md'), Page(title='Posts tagged 'markdown'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/markdown/page_1/index.md'), Page(title='Posts tagged 'internationalization'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/internationalization/page_1/index.md'), Page(title='Posts tagged 'releases'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/releases/page_1/index.md'), Page(title='Posts tagged 'systems'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/systems/page_1/index.md'), Page(title='Posts tagged 'meta'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/meta/page_1/index.md'), Page(title='Posts tagged 'localization'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/localization/page_1/index.md'), Page(title='Posts tagged 'features'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/features/page_1/index.md'), Page(title='Posts tagged 'hooks'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/hooks/page_1/index.md'), Page(title='Posts tagged 'content-discovery'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/content-discovery/page_1/index.md'), Page(title='Posts tagged 'processing'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/processing/page_1/index.md'), Page(title='Posts tagged 'svg'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/svg/page_1/index.md'), Page(title='Posts tagged 'comments'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/comments/page_1/index.md'), Page(title='Posts tagged 'docs'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/docs/page_1/index.md'), Page(title='Posts tagged 'quick-reference'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/quick-reference/page_1/index.md'), Page(title='Posts tagged 'templates'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/templates/page_1/index.md'), Page(title='Posts tagged 'templates'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/templates/page_2/index.md'), Page(title='Posts tagged 'graph'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/graph/page_1/index.md'), Page(title='Posts tagged 'formatting'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/formatting/page_1/index.md'), Page(title='Posts tagged 'paths'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/paths/page_1/index.md'), Page(title='Posts tagged 'build-checks'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/build-checks/page_1/index.md'), Page(title='Posts tagged 'file-scanning'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/file-scanning/page_1/index.md'), Page(title='Posts tagged 'reference'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/reference/page_1/index.md'), Page(title='Posts tagged 'reference'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/reference/page_2/index.md'), Page(title='Posts tagged 'reference'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/reference/page_3/index.md'), Page(title='Posts tagged 'reference'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/reference/page_4/index.md'), Page(title='Posts tagged 'menu'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/menu/page_1/index.md'), Page(title='Posts tagged 'coverage'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/coverage/page_1/index.md'), Page(title='Posts tagged 'link-validation'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/link-validation/page_1/index.md'), Page(title='Posts tagged 'snippets'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/snippets/page_1/index.md'), Page(title='Posts tagged 'self-hosting'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/self-hosting/page_1/index.md'), Page(title='Posts tagged 'mdx'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/mdx/page_1/index.md'), Page(title='Posts tagged 'beginner'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/beginner/page_1/index.md'), Page(title='Posts tagged 'button'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/button/page_1/index.md'), Page(title='Posts tagged 'css'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/css/page_1/index.md'), Page(title='Posts tagged 'external'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/external/page_1/index.md'), Page(title='Posts tagged 'material'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/material/page_1/index.md'), Page(title='Posts tagged 'html'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/html/page_1/index.md'), Page(title='Posts tagged 'content-layer'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/content-layer/page_1/index.md'), Page(title='Posts tagged 'patitas'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/patitas/page_1/index.md'), Page(title='Posts tagged 'explanation'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/explanation/page_1/index.md'), Page(title='Posts tagged 'filtering'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/filtering/page_1/index.md'), Page(title='Posts tagged 'versioning'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/versioning/page_1/index.md'), Page(title='Posts tagged 'changelog'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/changelog/page_1/index.md'), Page(title='Posts tagged 'changelog'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/changelog/page_2/index.md'), Page(title='Posts tagged 'content-reuse'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/content-reuse/page_1/index.md'), Page(title='Posts tagged 'hosting'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/hosting/page_1/index.md'), Page(title='Posts tagged 'embed'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/embed/page_1/index.md'), Page(title='Posts tagged 'terminology'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/terminology/page_1/index.md'), Page(title='Posts tagged 'pages'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/pages/page_1/index.md'), Page(title='Posts tagged 'workflow'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/workflow/page_1/index.md'), Page(title='Posts tagged 'discovery'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/discovery/page_1/index.md'), Page(title='Posts tagged 'subsystems'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/subsystems/page_1/index.md'), Page(title='Posts tagged 'reuse'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/reuse/page_1/index.md'), Page(title='Posts tagged 'icons'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/icons/page_1/index.md'), Page(title='Posts tagged 'authors'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/authors/page_1/index.md'), Page(title='Posts tagged 'metadata'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/metadata/page_1/index.md'), Page(title='Posts tagged 'ast'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/ast/page_1/index.md'), Page(title='Posts tagged 'directives'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/directives/page_1/index.md'), Page(title='Posts tagged 'reading-time'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/reading-time/page_1/index.md'), Page(title='Posts tagged 'css-generation'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/css-generation/page_1/index.md'), Page(title='Posts tagged 'external refs'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/external-refs/page_1/index.md'), Page(title='Posts tagged 'audio'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/audio/page_1/index.md'), Page(title='Posts tagged 'contributing'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/contributing/page_1/index.md'), Page(title='Posts tagged 'figure'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/figure/page_1/index.md'), Page(title='Posts tagged 'layout'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/layout/page_1/index.md'), Page(title='Posts tagged 'about'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/about/page_1/index.md'), Page(title='Posts tagged 'autodoc'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/autodoc/page_1/index.md'), Page(title='Posts tagged 'spotify'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/spotify/page_1/index.md'), Page(title='Posts tagged 'tutorial'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/tutorial/page_1/index.md'), Page(title='Posts tagged 'tutorial'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/tutorial/page_2/index.md'), Page(title='Posts tagged 'modernization'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/modernization/page_1/index.md'), Page(title='Posts tagged 'click'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/click/page_1/index.md'), Page(title='Posts tagged 'streaming'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/streaming/page_1/index.md'), Page(title='Posts tagged 'output'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/output/page_1/index.md'), Page(title='Posts tagged 'strategies'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/strategies/page_1/index.md'), Page(title='Posts tagged 'pagination'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/pagination/page_1/index.md'), Page(title='Posts tagged 'health'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/health/page_1/index.md'), Page(title='Posts tagged 'security'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/security/page_1/index.md'), Page(title='Posts tagged 'free-threading'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/free-threading/page_1/index.md'), Page(title='Posts tagged 'navigation'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/navigation/page_1/index.md'), Page(title='Posts tagged 'cache'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/cache/page_1/index.md'), Page(title='Posts tagged 'limitations'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/limitations/page_1/index.md'), Page(title='Posts tagged 'customization'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/customization/page_1/index.md'), Page(title='Posts tagged 'cards'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/cards/page_1/index.md'), Page(title='Posts tagged 'strings'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/strings/page_1/index.md'), Page(title='Posts tagged 'query-indexes'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/query-indexes/page_1/index.md'), Page(title='Posts tagged 'i18n'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/i18n/page_1/index.md'), Page(title='Posts tagged 'performance'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/performance/page_1/index.md'), Page(title='Posts tagged 'performance'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/performance/page_2/index.md'), Page(title='Posts tagged 'seo'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/seo/page_1/index.md'), Page(title='Posts tagged 'version history'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/version-history/page_1/index.md'), Page(title='Posts tagged 'openapi'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/openapi/page_1/index.md'), Page(title='Posts tagged 'cross-references'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/cross-references/page_1/index.md'), Page(title='Posts tagged 'frontmatter'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/frontmatter/page_1/index.md'), Page(title='Posts tagged 'badge'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/badge/page_1/index.md'), Page(title='Posts tagged 'object-model'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/object-model/page_1/index.md'), Page(title='Posts tagged 'callouts'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/callouts/page_1/index.md'), Page(title='Posts tagged 'media'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/media/page_1/index.md'), Page(title='Posts tagged 'myst'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/myst/page_1/index.md'), Page(title='Posts tagged 'content-api'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/content-api/page_1/index.md'), Page(title='Posts tagged 'type-safety'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/type-safety/page_1/index.md'), Page(title='Posts tagged 'cheatsheet'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/cheatsheet/page_1/index.md'), Page(title='Posts tagged 'capabilities'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/capabilities/page_1/index.md'), Page(title='Posts tagged 'github-actions'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/github-actions/page_1/index.md'), Page(title='Posts tagged 'syntax'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/syntax/page_1/index.md'), Page(title='Posts tagged 'testing'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/testing/page_1/index.md'), Page(title='Posts tagged 'core'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/core/page_1/index.md'), Page(title='Posts tagged 'blog'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/blog/page_1/index.md'), Page(title='Posts tagged 'remote-content'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/remote-content/page_1/index.md'), Page(title='Posts tagged 'rendering'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/rendering/page_1/index.md'), Page(title='Posts tagged 'directory-structure'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/directory-structure/page_1/index.md'), Page(title='Posts tagged 'content'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/content/page_1/index.md'), Page(title='Posts tagged 'sections'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/sections/page_1/index.md'), Page(title='Posts tagged 'asset-discovery'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/asset-discovery/page_1/index.md'), Page(title='Posts tagged 'quality'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/quality/page_1/index.md'), Page(title='Posts tagged 'lint'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/lint/page_1/index.md'), Page(title='Posts tagged 'social cards'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/social-cards/page_1/index.md'), Page(title='Posts tagged 'benchmarks'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/benchmarks/page_1/index.md'), Page(title='Posts tagged 'caching'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/caching/page_1/index.md'), Page(title='Posts tagged 'icon'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/icon/page_1/index.md'), Page(title='Posts tagged 'menus'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/menus/page_1/index.md'), Page(title='Posts tagged 'interface'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/interface/page_1/index.md'), Page(title='Posts tagged 'extension'', source='/home/runner/work/bengal/bengal/site/.bengal/generated/tags/extension/page_1/index.md')] All pages
{{ .Site.Menus }} `` Menu data

Variable Substitution in Content

Bengal supports variable substitution in markdown content:

---
title: Release Notes
version: "2.5.0"
release_date: "2025-01-15"
---

# {{ page.title }}

**Version {{ page.metadata.version }}** released on {{ page.metadata.release_date }}.

Current site: {{ site.config.title }}

Tip

Hugo only supports variables in templates. Bengal supports them in content files too.


Configuration Mapping

Basic Site Config

baseURL = "https://example.com"
title = "My Site"
languageCode = "en-us"
theme = "docsy"

[params]
  description = "My awesome site"
  github_repo = "https://github.com/user/repo"
[site]
baseurl = "https://example.com"
title = "My Site"
language = "en"
theme = "bengal"

[site.params]
description = "My awesome site"
github_repo = "https://github.com/user/repo"

Menu Configuration

[[menu.main]]
  name = "Docs"
  url = "/docs/"
  weight = 10

[[menu.main]]
  name = "Blog"
  url = "/blog/"
  weight = 20
[[site.menu.main]]
name = "Docs"
url = "/docs/"
weight = 10

[[site.menu.main]]
name = "Blog"
url = "/blog/"
weight = 20

Directory Structure Comparison

Hugo Bengal Notes
content/ content/ ✅ Same
static/ assets/ Different name
layouts/ templates/ Template location
themes/ themes/ ✅ Same
data/ data/ ✅ Same
config.toml bengal.toml Different name
archetypes/ Not used Use templates
resources/ Auto-managed No equivalent

Additional Features

:::{cards}
:columns: 3

:::{card} Feature 1
:icon: rocket
:link: /docs/feature1/

Quick description
:::{/card}

:::{card} Feature 2
:icon: package
:link: /docs/feature2/

Another feature
:::{/card}

:::{/cards}
:::{steps}

:::{step} Install
```bash
pip install bengal
```
:::{/step}

:::{step} Create Site
```bash
bengal new site mysite
```
:::{/step}

:::{step} Start Server
```bash
bengal serve
```
:::{/step}

:::{/steps}
:::{data-table}
:source: data/products.yaml
:columns: name, price, stock
:sortable: true
:filterable: true
:::
<!-- Define in data/glossary.yaml -->
<!-- Use in any page: -->
:::{glossary}
:tags: api, authentication
:::
<!-- Auto-generate cards from section children -->
:::{child-cards}
:columns: 2
:::

<!-- Show sibling pages in the current section -->
:::{siblings}
:::

<!-- Prev/Next navigation links -->
:::{prev-next}
:::

<!-- Breadcrumb navigation -->
:::{breadcrumbs}
:::

<!-- Related pages by tag -->
:::{related}
:tags: api, authentication
:::

Differences and Limitations

Hugo Feature Bengal Equivalent Notes
Custom shortcodes Directives Built-in directives cover most cases
Go templates Kida templates Similar concepts, different syntax
Hugo Modules Local themes Copy theme files or use Git submodules
.GetPagefunction Template functions Different API, similar functionality
Image processing fill, fit, resize Similar API:image.fill("800x600 webp q80")
Multilingual i18n langfrontmatter Simpler approach, less feature-rich

Template Syntax Differences

Hugo (Go) Bengal (Kida)
{{ if .Params.x }} {% if page.metadata.x %}
{{ range .Pages }} {% for page in pages %}
{{ .Title \| upper }} {{ page.title \| upper }}
{{ with .Params.x }} {% if page.metadata.x %}
{{ partial "name" . }} {% include "partials/name.html" %}

Template Functions vs Filters

Bengal distinguishes between functions (called directly) and filters (used with|). Hugo mixes both concepts.

Hugo's Approach:

Hugo uses both functions and methods:

{{ len .Pages }}                    {# Function #}
{{ .Pages.GetMatch "*.md" }}        {# Method #}
{{ .Title | upper }}                {# Filter #}

Bengal's Approach:

Bengal separates them clearly:

Filters (transform values):

{{ page.title | upper }}
{{ site.pages |> where('draft', false) }}

Functions (standalone operations):

{{ get_page('path') }}
{{ get_data('file.json') }}

Migration Pattern:

Hugo Bengal Type
{{ len .Pages }} {{ site.pages \| length }} Filter
{{ .GetPage "path" }} {{ get_page('path') }} Function
{{ .Title \| upper }} {{ page.title \| upper }} Filter
{{ index .Site.Data "authors" }} {{ get_data('data/authors.json') }} Function

Rule of thumb:

  • Hugo functions that transform values → Bengal filters
  • Hugo functions that retrieve/lookup → Bengal functions

See Functions vs Filters for complete explanation.


Migration Steps

  1. 1

    Copy Content

    # Copy your Hugo content
    cp -r /path/to/hugo/content/* content/
    
    # Content structure is compatible
    
  2. 2

    Convert Frontmatter

    Changecategories (plural) to category(singular):

    # Hugo
    categories: [tutorial, python]
    
    # Bengal
    category: tutorial
    tags: [python]  # Use tags for multiple categories
    
  3. 3

    Convert Shortcodes

    Find all shortcode usages:

    grep -r "{{<" content/
    

    Replace with directives:

    Hugo Shortcode Bengal Directive
    {{</* notice note */>}}...{{</* /notice */>}} :::{note}...:::
    {{</* highlight python */>}}...{{</* /highlight */>}} ```python...```
    {{</* tabs */>}}...{{</* /tabs */>}} :::{tab-set}...:::{/tab-set}
    {{</* figure src="..." */>}} :::{figure} path
    :alt: text
  4. 4

    Update Config

    Rename and update the config file:

    mv config.toml bengal.toml
    

    Update the format using the Configuration Mapping section above.

  5. 5

    Test

    bengal build
    bengal health linkcheck
    bengal serve
    

Migration Checklist

Before You Start

  • Install Bengal:pip install bengal
  • Backup your Hugo site
  • Create new Bengal site:bengal new site mysite

Content Migration

  • Copycontent/directory
  • Convert shortcodes to directives
  • Updatecategoriescategoryin frontmatter
  • Check variable syntax in templates

Assets Migration

  • Copystatic/ to assets/
  • Update asset paths in content if needed

Config Migration

  • Convertconfig.toml to bengal.toml
  • Update menu configuration
  • Set theme and other options

Verify

  • Build:bengal build
  • Check:bengal health linkcheck
  • Preview:bengal serve

Quick Reference Card

Task Hugo Bengal
New site hugo new site bengal new site
Build hugo bengal build
Serve hugo server bengal serve
New content hugo new docs/page.md Create file directly
Check links External tool bengal health linkcheck
Note callout {{ }} :::{note}
Warning {{ }} :::{warning}
Tabs {{ }} :::{tab-set}
Code {{ }} ```lang

Common Questions


Next Steps

4

From Sphinx/RST

Onboarding guide for Sphinx and reStructuredText users migrating to Bengal

Bengal for Sphinx/RST Users

You're 80% there. Bengal uses MyST-compatible syntax that mirrors what you already know.

Quick Wins (5 Minutes)

Your Directives Work (Almost)

The only syntax change:.. name:: becomes :::{name}.

Directive Syntax

Bengal uses colon-based syntax only (:::{name}). Backtick syntax (````{name}`) renders as code blocks, not directives. This avoids conflicts when showing directive examples in documentation.

Sphinx/RST Bengal Works?
.. note:: :::{note}
.. warning:: :::{warning}
.. tip:: :::{tip}
.. danger:: :::{danger}
.. literalinclude:: :::{literalinclude}
.. include:: :::{include}

Side-by-Side Example

.. note:: Important

   This is a note with **bold** text.

.. code-block:: python
   :linenos:
   :emphasize-lines: 2

   def hello():
       print("Hello, World!")
:::{note} Important
This is a note with **bold** text.
:::

```python
def hello():
    print("Hello, World!")
```

Complete Feature Mapping

Admonitions

Sphinx Bengal Notes
.. note:: :::{note} Identical semantics
.. warning:: :::{warning} Identical semantics
.. tip:: :::{tip} Identical semantics
.. danger:: :::{danger} Identical semantics
.. seealso:: :::{seealso} Supported
.. versionadded:: :::{since} Semantic versioning directive
.. deprecated:: :::{deprecated} Semantic deprecation notice
.. versionchanged:: :::{changed} Version change notice
.. admonition:: Custom :::{note} Custom Title Title in directive

Code Blocks

Sphinx Bengal Notes
.. code-block:: python ```python Standard fenced
:linenos: Not built-in CSS-based line numbers
:emphasize-lines: Not built-in Use comments to highlight
.. highlight:: python Not needed Each block specifies language

File Inclusion

Sphinx Bengal Notes
.. literalinclude:: file.py :::{literalinclude} file.py ✅ Same
:lines: 1-10 :lines: 1-10 ✅ Same option
:language: python :language: python ✅ Same option
.. include:: file.md :::{include} file.md ✅ Same

Example: Literalinclude Usage

:::{literalinclude} ../examples/hello.py
:language: python
:lines: 5-15
:caption: Hello World Example
:::

Cross-References

Bengal uses[[label]]syntax for intelligent cross-references that automatically resolve page titles and paths.

Sphinx Bengal Notes
:ref:\label`` [[path]] or [[path\|Custom Text]] Auto-resolves page title
:doc:\path`` [[path]]or standard markdown links Standard markdown also works
:term:\glossary`` :::{glossary}directive Data-driven
.. _label: {#label}in heading MyST anchor syntax

Example: Cross-Reference Examples

<!-- Basic cross-reference (uses page title automatically) -->
[[docs/getting-started]]

<!-- Cross-reference with custom text -->
[[docs/getting-started|Get Started Guide]]

<!-- Link to heading anchor -->
[[#installation]]
[[docs/getting-started#installation]]

<!-- Link by custom ID (if page has id: in frontmatter) -->
[[id:install-guide]]

<!-- Standard markdown links also work -->
[Configuration Guide](../reference/configuration.md)
[Config Options](../reference/configuration.md#options)

Cross-Reference Benefits

[[path]]syntax automatically:

  • Resolves to the correct page URL
  • Uses the page's title as link text (unless you specify custom text)
  • Handles path normalization automatically
  • Provides O(1) lookup performance

Table of Contents

Sphinx Bengal Notes
.. toctree:: Auto-generated fromweight File-system based
:maxdepth: 2 Sidebar depth in theme config Theme setting
:caption: Guide Section titles in_index.md Content structure
:hidden: hidden: truefrontmatter Per-page

Bengal auto-generates navigation from your directory structure. Useweightfrontmatter to control order:

---
title: Installation
weight: 10  # Lower = appears first
---

Configuration

Sphinx (conf.py) Bengal (bengal.toml)
project = 'My Docs' [site]
title = "My Docs"
extensions = [...] Built-in (no extensions needed)
html_theme = 'sphinx_rtd_theme' [site]
theme = "bengal"
html_static_path = ['_static'] assets/directory
templates_path = ['_templates'] themes/[name]/templates/

Example: Minimal bengal.toml

[site]
title = "My Documentation"
baseurl = "https://docs.example.com"
language = "en"
theme = "bengal"

Directory Structure

Sphinx Bengal Notes
source/ content/ Content root
_static/ assets/ Static files
_templates/ themes/[name]/templates/ Template overrides
conf.py bengal.toml Configuration
index.rst _index.md Section index
Makefile bengal build Build command

What Bengal Adds (Sphinx Doesn't Have)

:::{cards}
:columns: 3

:::{card} Quick Start
:icon: rocket
:link: quickstart

Get started in 5 minutes
:::{/card}

:::{card} API Reference
:icon: book
:link: api/

Complete API docs
:::{/card}

:::{/cards}
:::{tab-set}

:::{tab} pip
```bash
pip install mypackage
```
:::{/tab}

:::{tab} conda
```bash
conda install mypackage
```
:::{/tab}

:::{/tab-set}
:::{steps}

:::{step} Install Dependencies
```bash
pip install bengal
```
:::{/step}

:::{step} Create Site
```bash
bengal new site mysite
```
:::{/step}

:::{/steps}
:::{dropdown} Click to expand
:icon: info

Hidden content here. Supports **full markdown**.
:::

Bengal supports{{ variable }}substitution directly in markdown content:

---
title: My Page
version: "2.0"
---

# Welcome to version {{ page.metadata.version }}

The current page is: {{ page.title }}

Site name: {{ site.config.title }}

Variables available in content:

  • page.title, page.href, page.date- Page properties
  • page.metadata.xxx- Custom frontmatter fields
  • site.config.xxx- Site configuration values
bengal serve
# Live preview at http://localhost:5173
# Auto-reloads on file changes

What's Different (Honest Gaps)

Sphinx Feature Bengal Status Workaround
autodoc(Python introspection) Built-in Configure inbengal.toml
intersphinx(cross-project refs) Not built-in Use explicit URLs
Custom builders (PDF, ePub) HTML only External tools
Domain-specific roles Not built-in Use directives
Numbered figures Manual numbering CSS counters
Math/LaTeX Built-in support Enablecontent.mathin theme features; Math and LaTeX

autodoc Alternative

Bengal has a built-in autodoc system that generates API documentation from Python source. Configure it in eitherbengal.toml or config/_default/autodoc.yaml:

[autodoc.python]
enabled = true
source_dirs = ["src/"]
output_prefix = "api"  # Pages appear under /api/
autodoc:
  python:
    enabled: true
    source_dirs: ["src/"]
    output_prefix: "api"  # Pages appear under /api/

This generates virtual pages during the build process, unlike Sphinx's runtime introspection. Runbengal buildto generate API documentation from your Python source.


Migration Checklist

Before You Start

  • Install Bengal:pip install bengal
  • Create new site:bengal new site mysite
  • Copy content files (.rst.md)

Content Migration

  • Convert.. directive:: to :::{directive}(colon syntax only)
  • Convert:ref: links to [[path]]cross-references or markdown links
  • Update code blocks to fenced syntax (````python`)
  • Addweightfrontmatter for ordering

Configuration Migration

  • Createbengal.toml from conf.pysettings
  • Move_static/ to assets/
  • Move_templates/to theme templates

Verify

  • Build:bengal build
  • Check links:bengal health linkcheck
  • Preview:bengal serve

Quick Reference Card

Task Sphinx Bengal
Create note .. note:: :::{note}
Create warning .. warning:: :::{warning}
Include file .. include:: :::{include}
Include code .. literalinclude:: :::{literalinclude}
Cross-reference :ref:\label`` [[label]]
Link to doc :doc:\path`` Standard markdown links
Build make html bengal build
Serve sphinx-autobuild bengal serve
Check sphinx-build -W bengal health linkcheck

Common Questions


Next Steps

5

From Docusaurus/MDX

Onboarding guide for Docusaurus and MDX users migrating to Bengal

Bengal for Docusaurus/MDX Users

Great news: You get the same rich components without React, JSX, or npm. Bengal's directives provide similar functionality in pure Markdown.

Quick Wins (5 Minutes)

Admonition Syntax Is Almost Identical

Docusaurus Bengal Status
:::note :::{note} ✅ Just add{}
:::tip :::{tip} ✅ Just add{}
:::warning :::{warning} ✅ Just add{}
:::danger :::{danger} ✅ Just add{}
:::info :::{info} ✅ Just add{}

Side-by-Side

:::note
This is a note
:::

:::tip Pro Tip
This is a tip with a title
:::
:::{note}
This is a note
:::

:::{tip} Pro Tip
This is a tip with a title
:::

The only difference::::note:::{note}(add curly braces).


Component → Directive Translation

Tabs

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

<Tabs>
  <TabItem value="js" label="JavaScript">
    ```javascript
    console.log("Hello");
    ```
  </TabItem>
  <TabItem value="py" label="Python">
    ```python
    print("Hello")
    ```
  </TabItem>
</Tabs>
:::{tab-set}
:::{tab} JavaScript
```javascript
console.log("Hello");
```
:::{/tab}
:::{tab} Python
```python
print("Hello")
```
:::{/tab}
:::{/tab-set}

Tip

No imports, no JSX, no React. Just markdown.

Code Blocks

import CodeBlock from '@theme/CodeBlock';

<CodeBlock language="python" title="hello.py" showLineNumbers>
def hello():
    print("Hello!")
</CodeBlock>
```python title="hello.py"
def hello():
    print("Hello!")
```

Cards / Feature Grid

import {Card, CardGrid} from '@site/src/components/Card';

<CardGrid>
  <Card title="Quick Start" href="/docs/quickstart">
    Get started in 5 minutes
  </Card>
  <Card title="API Reference" href="/docs/api">
    Complete API documentation
  </Card>
</CardGrid>
:::{cards}
:columns: 2

:::{card} Quick Start
:link: /docs/quickstart/

Get started in 5 minutes
:::{/card}

:::{card} API Reference
:link: /docs/api/

Complete API documentation
:::{/card}

:::{/cards}

Collapsible Sections

<details>
  <summary>Click to expand</summary>

  Hidden content here with **markdown** support.
</details>
:::{dropdown} Click to expand
:icon: info

Hidden content here with **markdown** support.
:::

Live Code Editor

```jsx live
function Hello() {
  return <div>Hello World!</div>;
}
`
<!-- Option 1: Use embed directives (recommended) -->
:::{codesandbox} sandbox-id
:title: Interactive Example
:::

<!-- Option 2: Link to external playground -->
[Try it on CodeSandbox](https://codesandbox.io/s/example)

<!-- Option 3: Static code example -->
```jsx
function Hello() {
  return <div>Hello World!</div>;
}
```

Note

Bengal focuses on documentation, not interactive playgrounds. For live code, use built-in embed directives:

:::{codesandbox} sandbox-id
:title: My CodeSandbox Example
:::

:::{stackblitz} project-id
:title: StackBlitz Demo
:::

:::{codepen} user/pen-id
:title: CodePen Example
:::

What You Don't Need Anymore

Docusaurus Requires Bengal
npm install pip install bengal or uv pip install bengal
node_modules/(500MB+) ~5MB Python package
React/JSX knowledge Just Markdown
Component imports Built-in directives
package.json bengal.toml
Build step (Webpack) Simple file processing
Hydration debugging Static HTML
npm start(port 3000) bengal serve(port 5173)

Configuration Comparison

Basic Config

module.exports = {
  title: 'My Site',
  tagline: 'Documentation made easy',
  url: 'https://example.com',
  baseUrl: '/',

  presets: [
    [
      '@docusaurus/preset-classic',
      {
        docs: {
          sidebarPath: require.resolve('./sidebars.js'),
        },
        theme: {
          customCss: require.resolve('./src/css/custom.css'),
        },
      },
    ],
  ],
};
[site]
title = "My Site"
description = "Documentation made easy"
baseurl = "https://example.com"
theme = "bengal"

Sidebar Configuration

module.exports = {
  docs: [
    'intro',
    {
      type: 'category',
      label: 'Getting Started',
      items: ['quickstart', 'installation'],
    },
    {
      type: 'category',
      label: 'Guides',
      items: ['guide1', 'guide2'],
    },
  ],
};
<!-- Bengal auto-generates sidebar from directory structure -->
<!-- Control ordering with weight frontmatter: -->

<!-- content/docs/getting-started/_index.md -->
---
title: Getting Started
weight: 10
---

<!-- content/docs/getting-started/quickstart.md -->
---
title: Quickstart  
weight: 10
---

<!-- content/docs/getting-started/installation.md -->
---
title: Installation
weight: 20
---

Tip

Nosidebars.js needed! Bengal automatically generates navigation from your directory structure. Use weight frontmatter to control the order—lower numbers appear first. Pages without weightare sorted alphabetically.


Feature Comparison

What Bengal Has (No React Required)

Feature Docusaurus Bengal
Admonitions :::note :::{note}
Tabs <Tabs>component :::{tab-set}
Code blocks Built-in Built-in ✅
Cards Custom component :::{cards}
Dropdowns <details> :::{dropdown}
Steps Custom component :::{steps}
Badges Custom component :::{badge}
Buttons Custom component :::{button}
Include files MDX import :::{include}
Code inclusion MDX import :::{literalinclude}
TOC Built-in Built-in ✅
Search Algolia Built-in index
Breadcrumbs Theme :::{breadcrumbs}
Prev/Next Built-in :::{prev-next}

What's Different (Trade-offs)

Feature Docusaurus Bengal Trade-off
Live code Built-in External links Simpler, no hydration
Versioning Plugin Manual Copy tov1/, v2/folders
i18n Plugin langfrontmatter Simpler, less automated
Algolia Integrated External Bring your own search
Custom components React/JSX Templates Less flexible, more standard
Plugins npm ecosystem Built-in directives Fewer options, zero config

MDX-Specific Migration

Imports Don't Work (You Don't Need Them)

// ❌ MDX - Won't work in Bengal
import MyComponent from '@site/src/components/MyComponent';

<MyComponent prop="value" />
<!-- ✅ Bengal - Use built-in directives instead -->
:::{card} Title
:link: /path/

Content here
:::

Export/Props Don't Work (Use Frontmatter)

// ❌ MDX - Won't work
export const data = { version: '2.0' };

Current version: {data.version}
<!-- ✅ Bengal - Use frontmatter -->
---
title: My Page
version: "2.0"
---

Current version: {{ page.metadata.version }}

JSX in Markdown → Use Directives or HTML

// ❌ MDX - Won't work
<div className="custom-box">
  <h3>Custom Content</h3>
  <p>With JSX styling</p>
</div>
<!-- ✅ Bengal - Use directive or HTML -->
:::{card} Custom Content
:class: custom-box

With directive styling
:::

<!-- Or plain HTML (still works) -->
<div class="custom-box">
  <h3>Custom Content</h3>
  <p>With HTML styling</p>
</div>

Directory Structure Comparison

Docusaurus Bengal Notes
docs/ content/docs/ Content location
blog/ content/blog/ Blog posts
src/pages/ content/ Static pages
src/components/ Not needed Use directives
src/css/ themes/[name]/static/css/ Custom CSS
static/ assets/ Static files
docusaurus.config.js bengal.toml Configuration
sidebars.js Auto-generated Useweight
package.json pyproject.toml(optional) Dependencies

What Bengal Adds

---
title: API Reference
api_version: "3.0"
base_url: "https://api.example.com"
---

# {{ page.title }}

Current API version: **{{ page.metadata.api_version }}**

Base URL: `{{ page.metadata.base_url }}`

Docusaurus requires React state or MDX exports for this.

# data/glossary.yaml
terms:
  - term: API
    definition: Application Programming Interface
    tags: [api, core]

  - term: Endpoint
    definition: A specific URL path that accepts requests
    tags: [api, http]
<!-- In any page -->
:::{glossary}
:tags: api
:::
<!-- Auto-generate cards from child pages -->
:::{child-cards}
:columns: 3
:::

<!-- Show sibling pages in section -->
:::{siblings}
:::

<!-- Prev/Next navigation links -->
:::{prev-next}
:::

<!-- Breadcrumb navigation -->
:::{breadcrumbs}
:::

<!-- Related pages by tag -->
:::{related}
:tags: api, authentication
:::
:::{data-table}
:source: data/endpoints.yaml
:columns: method, path, description
:sortable: true
:filterable: true
:::

Migration Checklist

Before You Start

  • Install Bengal:pip install bengal
  • Create new site:bengal new site mysite
  • Keep Docusaurus running for reference

Content Migration

  • Copydocs/ to content/docs/
  • Copyblog/ to content/blog/
  • Convert:::note to :::{note}(add braces)
  • Remove MDX imports (use built-in directives)
  • Convert React components to directives

Configuration

  • Createbengal.toml from docusaurus.config.js
  • Removesidebars.js (use weightfrontmatter)
  • Movestatic/ to assets/

Cleanup

  • Removenode_modules/
  • Removepackage.json
  • Removesrc/directory

Verify

  • Build:bengal build
  • Check:bengal health linkcheck
  • Preview:bengal serve

Quick Reference Card

Task Docusaurus Bengal
Install npm install pip install bengal
New site npx create-docusaurus bengal new site
Build npm run build bengal build
Serve npm start bengal serve
Note :::note :::{note}
Tabs <Tabs>+ import :::{tab-set}
Cards Custom component :::{cards}
Dropdown <details> :::{dropdown}
Include MDX import :::{include}

Common Questions


If you're migrating from multiple platforms or need additional context:

Next Steps

6

Content Organization

Pages, sections, and bundles explained

How Content is Organized

Your folder structure becomes your site structure. No configuration required.

The Three Content Types

flowchart TB subgraph "Your Files" A["📄 about.md"] B["📁 blog/_index.md"] C["📦 gallery/index.md"] end subgraph "Your Site" D["/about/"] E["/blog/ + children"] F["/gallery/ + assets"] end A --> D B --> E C --> F

A single.mdfile → a single HTML page.

content/
└── about.md  →  /about/

Use for: standalone pages like About, Contact, Privacy Policy.

A folder with_index.md→ a list page with children.

content/
└── blog/
    ├── _index.md     →  /blog/ (list page)
    ├── post-1.md     →  /blog/post-1/
    └── post-2.md     →  /blog/post-2/

Use for: blog posts, documentation chapters, any collection.

A folder withindex.md→ a page with co-located assets.

content/
└── gallery/
    ├── index.md      →  /gallery/
    ├── photo-1.jpg   (co-located asset)
    └── photo-2.jpg   (co-located asset)

Use for: pages with images, data files, or other assets that belong together.

Quick Reference

Pattern File Creates Assets
Page name.md Single page Usestatic/
Section name/_index.md List + children Usestatic/
Bundle name/index.md Single page Co-located

Tip

Key difference:_index.md creates a section (with children). index.mdcreates a bundle (with assets). The underscore matters!

Seealso

7

Frontmatter Reference

Complete reference for all frontmatter fields

Frontmatter Reference

Complete reference for all frontmatter fields available in Bengal pages.

Required Fields

Field Type Description
title string Page title, used in navigation and<title>tag

Common Fields

Field Type Default Description
description string Page description for SEO and previews
date datetime file mtime Publication date
draft boolean false Iftrue, page is excluded from production builds
weight integer Sort order (lower = first). Pages without weight sort last.
slug string filename URL slug override
url string Complete URL path override
aliases list [] Additional URLs that redirect to this page
lang string site default Language code for i18n (e.g.,en, fr)

Taxonomy Fields

Field Type Description
tags list Tags for categorization (generates tag pages)
category string Single category for grouping (generates category pages)
keywords list SEO keywords (metadata only, no pages generated)
author string/object Page author (see Author Patterns below)

Note

Onlytags and category generate taxonomy pages by default. Use author(singular) for author attribution.

Author Patterns

Bengal supports multiple author patterns for flexibility:

Simple string (reference to data registry):

author: lbliii

Nested object (inline):

author:
  name: Lawrence Lane
  github: lbliii
  bio: Technical writer and developer

Multiple authors (list of strings or objects):

authors:
  - lbliii
  - name: Jane Smith
    github: janesmith

Flat author fields (legacy pattern):

author: Lawrence Lane
author_avatar: /images/lawrence.jpg
author_title: Senior Developer
author_bio: Technical writer and developer
author_links:
  - text: GitHub
    url: https://github.com/lbliii

Author Data Registry

Define authors once indata/authors.yamland reference by key:

# data/authors.yaml
lbliii:
  name: Lawrence Lane
  github: lbliii
  bio: Technical writer and developer
  avatar: /images/lawrence.jpg

Then reference in frontmatter:

author: lbliii

Access in templates:

{% let author_info = site.data.authors[page.metadata.author] %}
{{ author_info.name }}{{ author_info.bio }}

Component Model Fields

Bengal uses a Component Model where every page has three aspects: identity (type), appearance (variant), and data (props).

Field Type Default Description
type string Content type for sorting and template selection (e.g.,doc, blog, page). Inherits from section cascade if not set.
variant string Visual presentation variant (e.g.,editorial, magazine, wide, overview)
layout string Legacy field, normalized tovariant. Use variantinstead.
template string Explicit template path override (e.g.,blog/single.html)
nav_title string title Short title for navigation menus and sidebar

SEO Fields

Field Type Description
canonical string Canonical URL for duplicate content
noindex boolean Iftrue, adds noindexmeta tag
og_image string Open Graph image path
og_type string Open Graph type (article, website, etc.)

Navigation Fields

Field Type Description
menu object Menu placement configuration
nav_title string Short title for navigation (falls back totitle)
parent string Parent page for breadcrumbs

Advanced Fields

Field Type Description
cascade object Values to cascade to child pages
outputs list Output formats (html, rss, json)
resources list Page bundle resource metadata

Custom Fields (Props)

Any fields not part of Bengal's standard frontmatter are automatically available as custom props. Add them at the top level of your frontmatter.

Standard fields (extracted to PageCore):

  • title, description, date, draft, weight, slug, url, aliases, lang
  • tags, categories, keywords, authors, category
  • type, variant, layout, template
  • canonical, noindex, og_image, og_type
  • menu, nav_title, parent
  • cascade, outputs, resources, toc

Custom fields (Component Model props):

  • Any field not listed above goes intopage.props
  • Access in templates viapage.params (includes all frontmatter) or page.props(custom fields only)

Example

---
title: My Page
description: Page description
weight: 10
type: doc
icon: code
card_color: blue
custom_setting: value
---

Access custom fields in templates:

{# page.params includes all frontmatter (standard + custom) #}
{{ page.params.icon }}
{{ page.params.get('card_color', 'default') }}

{# page.props contains only custom fields #}
{{ page.props.icon }}

Note: The props: key is only used in skeleton manifests (bengal project skeleton apply). For regular markdown files, use flat frontmatter (all fields at top level).

Example

---
title: Getting Started with Bengal
description: Learn how to install and configure Bengal for your first site
date: 2025-01-15
draft: false
weight: 10
tags: [tutorial, beginner]
categories: [Getting Started]
authors: [jane-doe]
type: tutorial
variant: wide
cascade:
  type: doc
difficulty: beginner
time_estimate: 15 minutes
---

In this example:

  • Standard fields (title, date, weight, etc.) are extracted to PageCore
  • difficulty and time_estimate are custom props accessible via page.params
  • cascade propagates type: docto all child pages

Cascade Configuration

Thecascadefield applies values to all descendant pages:

---
title: Documentation
cascade:
  type: doc
  variant: docs
  draft: false
---

All pages under this section inherit these values unless they override them. Page-level values always take precedence over cascaded values.

8

Configuration

Configuring Bengal with bengal.toml

Configuration

Control Bengal's behavior throughbengal.tomland environment-specific settings.

Configuration Methods

flowchart TB subgraph "Base Configuration (Mutually Exclusive)" A[bengal.toml] B[config/ directory] end C[Environment Overrides] D[CLI Flags] E[Final Config] A -.->|OR| E B -.->|OR| E C --> E D --> E

Bengal loads configuration from either theconfig/ directory (preferred) OR bengal.toml (legacy/simple). If config/ exists, bengal.tomlis ignored.

Overrides apply in order: Base Config → Environment Overrides → CLI Flags.

Quick Start

# bengal.toml
[site]
title = "My Site"
baseurl = "https://example.com"
language = "en"

[build]
output_dir = "public"

[theme]
name = "default"

Configuration Patterns

Best for small sites:

# bengal.toml - everything in one place
[site]
title = "My Blog"

[build]
output_dir = "public"

[theme]
name = "default"

Best for larger sites:

config/
├── _default/
│   ├── site.yaml
│   ├── build.yaml
│   └── theme.yaml
└── environments/
    ├── production.yaml
    └── staging.yaml

Environment Overrides

Run with different settings per environment:

bengal build --environment production
# config/environments/production.yaml
site:
  baseurl: "https://example.com"

build:
  minify_html: true
  strict_mode: true

assets:
  fingerprint: true

Tip

Best practice: Keep development settings inbengal.toml, add production overrides in config/environments/production.yaml.

Build Options Reference

Key[build]configuration options:

Option Type Default Description
output_dir string "public" Directory for generated files
minify_html bool true Minify HTML output
validate_templates bool false Proactive template syntax validation
validate_build bool true Post-build validation checks
validate_links bool true Check for broken internal links
strict_mode bool false Fail build on any error or warning
fast_mode bool false Enable maximum performance optimizations

Note

Incremental builds are automatic. First build is full (creates cache), subsequent builds only rebuild changed content. Use--no-incrementalCLI flag for debugging or CI clean builds.

Asset Options

Configure asset processing in the[assets]section:

Option Type Default Description
minify bool true Minify CSS/JS assets
optimize bool true Optimize images
fingerprint bool true Add content hash to asset URLs
[assets]
minify = true
optimize = true
fingerprint = true

Template Validation

Enablevalidate_templatesto catch template syntax errors early during builds:

[build]
validate_templates = true

When enabled, Bengal validates all templates (HTML/XML) in your template directories before rendering. This provides early feedback on syntax errors, even for templates that might not be used by every page.

Enable template validation during development for immediate feedback:

[build]
validate_templates = true

Combine with strict mode in CI pipelines to fail builds on template errors:

[build]
validate_templates = true
strict_mode = true

When to enable:

  • During active theme development
  • In CI/CD pipelines
  • When debugging template issues

What it catches:

  • Template syntax errors (unclosed tags, invalid filters) in Kida and Jinja2
  • Unknown filter names
  • Template assertion errors

Note

Template validation adds a small overhead to build time. For large sites, consider enabling it only in development and CI environments.

Multi-Variant Builds

Build different site variants (OSS vs Enterprise, brand1 vs brand2) from one content tree. Setparams.edition per environment and add editionto page frontmatter to filter content.

Seealso

Multi-Variant Builds — Full guide for OSS/Enterprise and brand variants

✓ Track Complete