{% extends "base.html" %} {# Social preview tags and structured data. Material emits , <meta name="description"> and the canonical link on its own, but no Open Graph or Twitter tags - so a link to this site pasted into Slack, X or LinkedIn rendered as a bare URL. These fill that in for every page, using the page's own title/description and falling back to the site's. The alternative was Material's `social` plugin, which renders a per-page OG image at build time. It needs cairo/pango/libffi system packages in CI, which is a real cost for a docs job that currently installs one wheel; the product screenshot works as a static preview image and needs nothing. Revisit if per-page previews become worth the build dependency. #} {# One definition of the page title, used by <title> and by the social cards, so the tab and a pasted link can never disagree. Material's own rule is "{{ page title }} - {{ site name }}", which is right for a doc page and wrong for the front page: it can only ever put the brand last, and a root URL should lead with the product. `home_title` is therefore written out in full, and every other page keeps Material's shape. Kept to ~50 characters: Google truncates a title around 60, and this one has to survive being suffixed in some surfaces. #} {% set home_title = "Vayu - REST & GraphQL API Client with Load Testing" %} {% if page.is_homepage %} {% set page_title = home_title %} {% elif page.meta and page.meta.title %} {% set page_title = page.meta.title ~ " - " ~ config.site_name %} {% else %} {% set page_title = page.title ~ " - " ~ config.site_name %} {% endif %} {% block htmltitle %} <title>{{ page_title }} {% endblock %} {% block extrahead %} {% set title = page_title %} {% set description = page.meta.description if page.meta and page.meta.description else config.site_description %} {% set image = config.site_url ~ "images/vayu-loadtest.png" %} {# SoftwareApplication on the home page only - it describes the product, not each document. Deliberately carries no aggregateRating or review: Vayu has no collected ratings, and inventing them to chase a rich result would be fabricating data. Version is not pinned here either, since it would go stale on every release with nothing to catch it. #} {% if page.is_homepage %} {% endif %} {% endblock %}