Welcome to Vanilla Breeze
This bell pulls live notifications from /go/notify/messages — the same contract documented at /docs/concepts/service-contracts/. Static articles like this one are the no-JS / no-backend fallback.
This bell pulls live notifications from /go/notify/messages — the same contract documented at /docs/concepts/service-contracts/. Static articles like this one are the no-JS / no-backend fallback.
Content page with sidebar navigation using layout-sidebar. Sidebar collapses below content on narrow screens.
This pattern creates a documentation or article page with a sidebar for in-page navigation. It uses data-layout="sidebar" for the responsive split and <layout-text> to constrain the reading width.
Key features:
layout-textAn article page with sidebar navigation linking to content sections.
The data-layout="sidebar" attribute handles the responsive behavior automatically.
<main data-layout="sidebar" data-layout-gap="xl" data-layout-sidebar-width="narrow" data-layout-content-min="60"> <!-- Sidebar navigation --> <nav class="tree" aria-label="Page navigation" data-layout-density="compact"> <ul> <li><a href="#introduction">Introduction</a></li> <li><a href="#installation">Installation</a></li> <li><a href="#usage">Usage</a></li> <li><a href="#api">API Reference</a></li> </ul> </nav> <!-- Main article content --> <article> <header> <h1>Article Title</h1> <p class="subtitle">A brief description of the article content.</p> <p class="meta"> <time datetime="2026-01-15">January 15, 2026</time> <span>5 min read</span> </p> </header> <layout-text data-measure="normal"> <section id="introduction"> <h2>Introduction</h2> <p>Lead paragraph introducing the topic.</p> </section> <section id="installation"> <h2>Installation</h2> <p>Installation instructions go here.</p> <pre><code>npm install package-name</code></pre> </section> <section id="usage"> <h2>Usage</h2> <p>Usage examples and explanations.</p> </section> <section id="api"> <h2>API Reference</h2> <p>Detailed API documentation.</p> </section> </layout-text> </article></main>
The data-layout="sidebar" pattern accepts these data attributes:
| Attribute | Values | Description |
|---|---|---|
data-layout-gap |
xs s m l xl 2xl |
Gap between sidebar and content. |
data-layout-sidebar-width |
narrow normal wide |
Intrinsic width of the sidebar. |
data-layout-content-min |
40 50 60 |
Minimum content width (%) before sidebar stacks. |
data-layout-side |
end |
Place sidebar after content (default: before content). |
data-layout-content-min)nav.tree for the sidebar navigation with in-page anchor links<layout-text> to constrain line lengthid attributes on sections that match navigation href valuesaria-current="page" to the currently visible section linkSidebar layout element documentation
Collapsible tree navigation pattern
Reading measure constraint element