pages.renderer

Page actions AI-ready formats and sharing
Open LLM text
Share with AI
Ask Claude Ask ChatGPT Ask Gemini Ask Copilot

Layout chain rendering with HX-Target-aware depth.

The renderer composes nested layouts inside-out using kida's render_with_blocks(). The HX-Targetheader determines how deep to render — only the layouts below the targeted element…

Layout chain rendering with HX-Target-aware depth.

The renderer composes nested layouts inside-out using kida's render_with_blocks(). The HX-Targetheader determines how deep to render — only the layouts below the targeted element are rendered, preserving the outer shell on the client.

pages.renderer

Name Type Default Description
type —
qualified_name —
element_type —
description —
source_file —
line_number —
is_autodoc —
autodoc_element —
_autodoc_template —
_autodoc_url_path —
_autodoc_page_type —
title —
doc_content_hash —

Symbols on this page

_omit_outer_layout_targets
function
def _omit_outer_layout_targets(*, fragment_target_registry: FragmentTargetRegistry | None, htmx_target: str | None) -> frozenset[str]

Return registered targets that should omit the matched outer layout.

Parameters

Name Type Default Description
fragment_target_registry FragmentTargetRegistry | None —
htmx_target str | None —
render_with_layouts
function
def render_with_layouts(env: Environment, *, layout_chain: LayoutChain, page_html: str, context: dict[str, Any], htmx_target: str | None = None, is_history_restore: bool = False, fragment_target_registry: FragmentTargetRegistry | None = None) -> str

Render page content wrapped in its layout chain.

UsesHX-Targetto determine rendering depth:

  • No target (full page load or history restore): render all layouts nested, innermost first.
  • Target matches a replace outlet or omit target: skip the matched outer layout and render any descendant layouts below it.
  • Target matches an ordinary layout target: render the matched layout and any descendants below it.
  • Target matches no layout: return page HTML as-is (fragment).

Parameters

Name Type Default Description
env Environment — The kida ``Environment`` for loading layout templates.
layout_chain LayoutChain — Sequence of layouts from root (outermost) to deepest (closest to the page).
page_html str — Pre-rendered page content HTML.
context dict[str, Any] — Merged context variables for layout templates.
htmx_target str | None None Value of ``HX-Target`` header, or ``None``.
is_history_restore bool False Whether this is an htmx history restore.
fragment_target_registry FragmentTargetRegistry | None None Optional registry for targets that must skip the matched outer filesystem layout during boosted navigation.

View source · /home/runner/work/chirp/chirp/site/../src/chirp/pages/renderer.py:1