{# The document shell. Every page extends this, directly or through the app's own base.html. What it owns: the
, the theme flash-guard, the asset links, and the header/main/footer skeleton. What it does not own: your brand, your nav, your footer text — those are blocks. Typical app base.html: {% extends "ui/shell.html" %} {% from "ui/nav.html" import brand, nav_links %} {% block site_title %}Acme{% endblock %} {% block brand %}{{ brand("Acme", url_for(request, "home"), "gauge") }}{% endblock %} {% block nav %}{{ nav_links(request, [("home", "Overview")]) }}{% endblock %} Fill the `sidebar` block instead of `nav` and the skeleton becomes a side column plus a thin top bar; see the note above . The header is always pinned to the top of the viewport. A page that needs it in the flow instead — an embedded or print layout — overrides the `header` block with its own markup: {% block header %}