The definitive root layout for all Standard Garden websites — <html>/<head>/<body>, theme/color-mode/language resolution, and the header/footer slots every page gets by default.
System-layer components (Toast, Confetti, Lab) are not hardcoded here — they’re registered as Gold Standard modules and injected via StndInit‘s hook zones: stnd:base (static Astro components, no hydration) and stnd:client (hydrated Svelte components). To exclude one, use moduleExclude in astro.config: standard({ moduleExclude: ["@stnd/modules/confetti"] }). See Hooks & Extension Points for the full list.
Props
| Type | Name | Description |
|---|---|---|
| string | title? |
Page title — passed straight through to <Meta>. Defaults to the site’s own config title. |
| string | description? |
|
| string | image? |
Social-share image URL. |
| string | created? |
|
| string | modified? |
|
| string[] | tags? |
|
| string | theme? |
Theme name — defaults to the visitor’s saved preference, then the site’s system default. |
| string | lang? |
|
| boolean | hideLayout? |
Skip the default header/footer entirely (still renders <html>/<head>/<body>). |
| string | class? |
|
| string | inlineStyle? |
|
| string | headExtras? |
Extra raw markup injected into <head>. |
| “public” | “private” | “unlisted” | visibility? |
|
| { brand?: string; brandHref?: string; items?: Array<{ title: string; url: string; external?: boolean }>; } | header? |
Forwarded to <Header> — brand text/link and nav items. |