GitHub

SEO & Social Cards#

Kiln aims to make the generated HTML as discoverable as possible, with no extra work on your part. This page sets a custom image in its front matter, so when it’s shared the social preview uses that image.

Per-page meta#

For every page Kiln emits:

  • a <title> (from the page heading or front-matter title),

  • a <meta name="description"> (front-matter description, falling back to the site description),

  • a <link rel="canonical"> pointing at the page’s canonical URL,

  • hreflang alternates for each language.

OpenGraph & Twitter#

OpenGraph and Twitter Card tags are generated for rich link previews:

<meta property="og:type" content="article">
<meta property="og:title" content="SEO &amp; Social Cards">
<meta property="og:url" content="https://kiln.brokenhands.io/guides/seo/">
<meta property="og:image" content="https://kiln.brokenhands.io/assets/social-card.svg">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@brokenhandsio">

The preview image resolves in this order:

  1. the page’s front-matter image,

  2. the site-wide image,

  3. (none) — the card renders without an image.

Use a real raster image

Social scrapers (Slack, X, iMessage, …) handle PNG/JPG far more reliably than SVG. This site uses an SVG only to keep the example dependency-free — for production, set image to a 1200×630 PNG.

Sitemap & robots#

Every build writes:

  • sitemap.xml — all pages across all languages, with hreflang alternates,

  • robots.txt — pointing at the sitemap.

Sitemap: https://kiln.brokenhands.io/sitemap.xml

Verifying your domain#

You don’t need a special file for search-console verification — add the meta tag your provider gives you via a custom template or extraCSS/head hook. Most teams use DNS verification instead, which needs nothing in the site.

Edit this page