Head component: title, description, Open Graph and Twitter cards, favicons, fonts, and JSON-LD. Multiple Head components in the tree merge; for single-valued tags (title, description, canonical, og:title, robots, …) a page-level tag overrides the layout-level tag with the same key, while repeatable tags (og:image, <link rel="preload">, icons, …) accumulate.
Examples below use the default app router. Set router: "pages" in veryfront.config.ts to switch to the pages router.
Prerequisites
- At least one page in your project (see Pages and routing).
Basic metadata
Head component renders its children into the document’s <head>. When multiple Head components are present (e.g., in a layout and a page), they merge:
So you can define defaults in a layout and override the single-valued ones per page.
Children may be grouped in a fragment (
<>…</>) or produced with .map(); both are treated the same as direct children.
Open Graph
Favicon and icons
Fonts
Load Google Fonts with theGoogleFonts component:
Structured data (JSON-LD)
Per-page metadata in layouts
Set defaults in the layout, override in pages:MDX frontmatter
MDX pages can set metadata via frontmatter:title and description from frontmatter into the <head>.
Verify it worked
Open the page in the browser and inspect the document<head>. Confirm:
<title>matches what you set.- The
description,og:*, andtwitter:*meta tags are present and have the expected values. - For social previews, use the Facebook sharing debugger and Twitter card validator once the site is deployed.