SEO and social sharing
Configure Monoline Docs titles, descriptions, canonical URLs, social images and indexing. Verify production output and submit your sitemap to Google Search Console.
On this page
Give each page a useful title and description, then configure the public origin before publishing. Monoline generates metadata from these settings; search engines decide whether and how to display your pages.
Configure the publishing URL
In monoline-docs.yml:
title: Team handbook
description: Guides and API reference for the Example SDK.
site: https://docs.example.com
base: /
indexing: true
assetsDirectory: ./assets
seo:
titleTemplate: "%s | Team handbook"
socialImage: /assets/social.png
socialImageAlt: Example SDK documentation
author:
type: Person
name: Alex Example
url: https://example.com/about
publisher:
type: Organization
name: Example SDK
url: https://example.comsite is an HTTP(S) origin without a path, query or fragment. For documentation
at https://example.com/handbook/, use site: https://example.com and
base: /handbook/. The base applies to canonical URLs, sitemap entries and local
social image URLs. See Deployment for the corresponding host layout.
titleTemplate must contain %s, replaced with the page’s seoTitle or title.
Its default is %s | followed by the configured site title. Keep the result
descriptive and avoid repeating the site name in seoTitle.
socialImage requires site and a local PNG, JPEG or WebP file under
assetsDirectory. The example uses assets/social.png. Monoline emits an
absolute image URL for Open Graph and Twitter sharing metadata. socialImageAlt
provides a meaningful image description; it defaults to the site title.
author and publisher are optional identity objects with type (Person or
Organization), name, and optional HTTP(S) url and sameAs profile URLs.
Use the actual content author and publishing identity. Publisher information is
attached to the website and pages; author information is attached to pages.
Do not use product websites as alternate personal identities.
Write page metadata
---
title: Install the SDK
navTitle: Installation
seoTitle: Install the Example SDK
description: Install the Example SDK, configure your API key and send your first request.
updatedAt: 2026-10-01
---| Field | Use |
|---|---|
title |
Required visible page heading; also the fallback SEO title. |
navTitle |
Short navigation label, independent of the heading and SEO title. |
seoTitle |
Page title inserted into seo.titleTemplate. |
description |
Page-specific HTML and sharing description; falls back to the site description. |
updatedAt |
Real calendar date in YYYY-MM-DD format; supplies structured data’s dateModified. |
noindex |
Emit noindex, nofollow and exclude the page from local search, sitemap, Markdown exports and AI indexes. |
Use descriptions that explain what readers can accomplish on that particular
page. Update updatedAt when the content changes; it is not automatically derived
from Git. See Frontmatter for the full reference.
Control previews and unpublished content
Build a hosted staging site with:
npx monoline-docs build --indexing falseThis production build excludes drafts and adds noindex, nofollow to pages. It
omits the sitemap, generated robots file and structured data. Set indexing: false
in configuration when that is the default for your environment.
Use draft: true for unfinished pages: production builds omit them entirely.
The local development preview includes drafts and marks pages as noindex. Keep
draft routes out of production navigation and links.
Use noindex: true for a published page that should be excluded from discovery.
Its HTML remains accessible. These settings are not access controls; protect
private material at the host. Google must be able to crawl a page to read its
noindex directive.
Check generated output
Run npm run build and inspect the configured output directory before deploying:
- Page HTML contains the expected title, description, canonical URL and sharing metadata.
- Indexable pages with
siteconfigured containWebSiteJSON-LD. The homepage usesWebPage; other pages useArticle, orTechArticlewithlayout: reference. Non-home pages also containBreadcrumbListdata from navigation. sitemap.xmlcontains production routes with the configured origin and base, excluding drafts and noindex pages. AuthoredupdatedAtsupplieslastmod; pages without that date omit it. Do not substitute the build date.- With
base: /,robots.txtallows crawling and points to the sitemap. With a subpath, Monoline omits this file: the origin owner manages/robots.txtand can addSitemap: https://example.com/handbook/sitemap.xmlthere. - The generated
404.htmlis noindex. Configure the host to serve it with an HTTP 404 status for missing pages.
Without site, Monoline emits no canonical URLs, sitemap, robots file or
site/page/breadcrumb JSON-LD. Titles and descriptions still render. No production
origin is inferred. With indexing disabled, canonical URLs still use site when set.
Troubleshoot metadata
| Symptom | Check |
|---|---|
| Missing sitemap | Set site, enable indexing and run a production build. Draft and noindex pages are excluded. |
| Missing robots file | Only root deployments generate robots.txt; the origin owner manages it for subpath sites. |
| Wrong canonical URL | Keep the origin in site and the deployment path in base. Check CLI overrides, then rebuild. |
| Missing sharing image | Set site; confirm the PNG, JPEG or WebP exists under assetsDirectory and its deployed /assets/ URL loads. |
| Stale search title or snippet | Check deployed HTML and URL Inspection. Google may need to recrawl and may choose different display text. |
Connect Google Search Console
After deploying your production build:
- Add and verify a Search Console property. Use a Domain property when you control DNS, or a URL-prefix property matching the published docs URL, including its subpath.
- Submit the deployed
sitemap.xmlURL in the Sitemaps report. For the subpath example, submithttps://example.com/handbook/sitemap.xml. - Inspect the homepage and a representative guide with URL Inspection. Check crawl access, indexing status and the canonical selected by Google.
- Review the Page indexing report for unexpected exclusions and the Performance report for search queries and pages after data becomes available.
A submitted sitemap helps discovery; it does not guarantee indexing or rankings. Structured data describes the content and does not guarantee a rich result.