Pattern
Page head and metadata
What every page tells browsers, search engines, social networks, and agents: one title, one description, one card.
01
Rules
- Title
- “Page Topic • Niklaus Gerber” (
•) in<title>,og:title, andtwitter:title. The home is just “Niklaus Gerber”. - Description
- One per page, 110 to 155 characters, full sentences. The same text in
meta description,og:description,twitter:description, and JSON-LD; for an article also in its Thoughts row,feed.xml, andllms.txt. - Canonical
https://niklausgerber.com/…/with a trailing slash, nowww.- Share card
- 1200 × 630, generated per page by
make-share-cards.sh(seebrand/README.md, Share card). - Structured data
- JSON-LD per page type: WebSite, ProfilePage, and Person (home); WebPage (content pages); CollectionPage and ItemList (Agents); MobileApplication, Offer, and FAQPage (Hirsla); Book (Unresolved); BlogPosting (articles). Every page but the home carries a BreadcrumbList; on second-level pages it ends with the current page.
- Theme colour
#F5F3EFlight,#121212dark; the night page#0a0a0b.- Agents and feeds
- Every public page is in
sitemap.xmlandllms.txt; articles are infeed.xml. - Scripts
- No inline script except JSON-LD;
vt.jsin the head,site.jsas a module.