<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Design language on vanityURLs Brand</title><link>https://brand.vanityurls.link/design-language/</link><description>Recent content in Design language on vanityURLs Brand</description><generator>Hugo</generator><language>en-CA</language><atom:link href="https://brand.vanityurls.link/design-language/index.xml" rel="self" type="application/rss+xml"/><item><title>Color</title><link>https://brand.vanityurls.link/design-language/color/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/color/</guid><description>&lt;ul&gt;
&lt;li&gt;Use teal as an accent, not as the whole interface.&lt;/li&gt;
&lt;li&gt;Keep status colors semantic and distinct from brand teal.&lt;/li&gt;
&lt;li&gt;Preserve badge contrast on light and dark surfaces.&lt;/li&gt;
&lt;li&gt;Pair brand accents with neutral gray, white, and dark ink surfaces so pages do not become one-note teal compositions.&lt;/li&gt;
&lt;li&gt;Test color combinations against WCAG contrast requirements before publishing.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The vanityURLs palette follows the same intent as the &lt;a href="https://ux.redhat.com/foundations/color/"&gt;Red Hat color foundation&lt;/a&gt;: color is a practical system for brand expression, hierarchy, state, and accessibility. Treat the palette as a set of named decisions, not a drawer of interchangeable decoration.&lt;/p&gt;</description></item><item><title>Fonts and typography</title><link>https://brand.vanityurls.link/design-language/typography/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/typography/</guid><description>&lt;p&gt;The website self-hosts &lt;a href="https://rsms.me/inter/"&gt;Inter Variable&lt;/a&gt; for interface and prose text, plus &lt;a href="https://www.jetbrains.com/lp/mono/"&gt;JetBrains Mono&lt;/a&gt; for code. Font files live under &lt;code&gt;static/fonts/&lt;/code&gt; and are declared in &lt;code&gt;assets/css/main.css&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;The typographic model takes inspiration from the &lt;a href="https://ux.redhat.com/foundations/typography/font-family/"&gt;Red Hat font-family foundation&lt;/a&gt;: use one family for expressive and readable text, and one monospaced family for code and technical identifiers. vanityURLs uses Inter instead of Red Hat Display/Text, but keeps the same separation between human-readable prose and technical material.&lt;/p&gt;
&lt;h2 id="typeface-samples"&gt;Typeface samples&lt;/h2&gt;
&lt;div class="brand-type-samples not-prose"&gt;
 &lt;section class="brand-type-sample"&gt;
 &lt;h3&gt;Inter Variable&lt;/h3&gt;
 &lt;p class="brand-type-specimen brand-type-inter"&gt;Aa vanityURLs&lt;/p&gt;</description></item><item><title>Grid</title><link>https://brand.vanityurls.link/design-language/grid/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/grid/</guid><description>&lt;p&gt;Use a centered content column for documentation and reference pages. Keep long-form reading surfaces narrow enough to scan comfortably.&lt;/p&gt;
&lt;p&gt;The standard documentation layout uses a left navigation, a main reading column, and an optional table of contents. Brand pages should reuse that layout unless the page is a special-purpose asset preview.&lt;/p&gt;
&lt;p&gt;The grid approach is based on the &lt;a href="https://ux.redhat.com/foundations/grid/"&gt;Red Hat grid foundation&lt;/a&gt;: a predictable structure with responsive columns, margins, gutters, and constrained line length. vanityURLs keeps the same discipline but adapts it to a compact documentation site and generated redirect pages.&lt;/p&gt;</description></item><item><title>Spacing</title><link>https://brand.vanityurls.link/design-language/spacing/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/spacing/</guid><description>&lt;p&gt;Spacing should make the interface easy to scan. Use tighter spacing for operational tools and more generous spacing for page openings, brand summaries, and asset previews.&lt;/p&gt;
&lt;p&gt;The website uses fluid documentation spacing tokens in &lt;code&gt;assets/css/main.css&lt;/code&gt;, from &lt;code&gt;--docs-space-2xs&lt;/code&gt; through &lt;code&gt;--docs-space-l&lt;/code&gt;. Use those token relationships when adding new documentation components.&lt;/p&gt;
&lt;p&gt;The spacing model follows the &lt;a href="https://ux.redhat.com/foundations/spacing/"&gt;Red Hat spacing foundation&lt;/a&gt;: a small, named scale keeps rhythm consistent across components, patterns, and layouts. vanityURLs maps that idea to documentation prose, compact product UI, generated pages, and asset previews.&lt;/p&gt;</description></item><item><title>White space and text flow</title><link>https://brand.vanityurls.link/design-language/white-space-and-flow/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/white-space-and-flow/</guid><description>&lt;p&gt;White space is part of the interface, not decoration. It helps readers understand what belongs together, where a section starts, and which action is most important.&lt;/p&gt;
&lt;h2 id="prose-flow"&gt;Prose flow&lt;/h2&gt;
&lt;p&gt;The documentation uses &lt;code&gt;content-flow&lt;/code&gt; and &lt;code&gt;docs-flow&lt;/code&gt; patterns to create steady spacing between paragraphs, headings, lists, code blocks, tables, and callouts.&lt;/p&gt;
&lt;p&gt;Use that rhythm for long-form pages. Avoid manually stacking ad hoc margins unless a reusable component needs a new spacing rule.&lt;/p&gt;
&lt;h2 id="flow-pattern-rules"&gt;Flow pattern rules&lt;/h2&gt;
&lt;p&gt;Use &lt;code&gt;content-flow&lt;/code&gt; on Markdown-style content containers that need readable prose spacing. It sets the shared body size, line height, child spacing, heading rhythm, and list-item rhythm for paragraphs, lists, quotes, tables, code blocks, highlighted code, and non-prose inserts.&lt;/p&gt;</description></item><item><title>A11Y</title><link>https://brand.vanityurls.link/design-language/accessibility/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/accessibility/</guid><description>&lt;p&gt;Accessibility is part of the brand system, not an afterthought.&lt;/p&gt;
&lt;p&gt;The main website publishes an &lt;a href="https://vanityurls.link/en/accessibility/"&gt;Accessibility Statement&lt;/a&gt; and a &lt;a href="https://vanityurls.link/en/trust/"&gt;Trust Center&lt;/a&gt; with the current conformance target, known gaps, and reporting channels. Brand work should preserve those commitments instead of treating them as a separate compliance page.&lt;/p&gt;
&lt;h2 id="requirements"&gt;Requirements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Preserve visible focus states.&lt;/li&gt;
&lt;li&gt;Use meaningful link text.&lt;/li&gt;
&lt;li&gt;Keep color contrast readable.&lt;/li&gt;
&lt;li&gt;Provide localized alternative text for badges and images.&lt;/li&gt;
&lt;li&gt;Avoid layouts where text overlaps, clips, or becomes too small to read.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="site-standards"&gt;Site standards&lt;/h2&gt;
&lt;p&gt;The current website targets WCAG 2.1 Level AA and documents partial conformance publicly. That standard applies to brand pages, documentation, generated redirect pages, badges, and operator-facing product surfaces.&lt;/p&gt;</description></item><item><title>Components and patterns</title><link>https://brand.vanityurls.link/design-language/components-and-patterns/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/components-and-patterns/</guid><description>&lt;p&gt;The brand system should reuse existing components before creating new ones. Shared patterns keep pages predictable and reduce CSS drift.&lt;/p&gt;
&lt;h2 id="documentation-patterns"&gt;Documentation patterns&lt;/h2&gt;
&lt;p&gt;Use existing Hugo shortcodes and CSS components for:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Callouts and notices.&lt;/li&gt;
&lt;li&gt;Steps and ordered setup flows.&lt;/li&gt;
&lt;li&gt;File trees and repository structure.&lt;/li&gt;
&lt;li&gt;Code blocks with copy buttons.&lt;/li&gt;
&lt;li&gt;Tables for tokens, assets, and compatibility notes.&lt;/li&gt;
&lt;li&gt;Details sections for secondary explanation.&lt;/li&gt;
&lt;li&gt;Cards for repeated navigation items or downloads.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="product-patterns"&gt;Product patterns&lt;/h2&gt;
&lt;p&gt;Generated redirect and operator-facing surfaces should feel related to the documentation without becoming documentation pages.&lt;/p&gt;</description></item><item><title>Iconography</title><link>https://brand.vanityurls.link/design-language/iconography/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/iconography/</guid><description>&lt;p&gt;Iconography should clarify meaning, not decorate empty space. The vanityURLs system follows the practical shape of the &lt;a href="https://ux.redhat.com/foundations/iconography/"&gt;Red Hat iconography foundation&lt;/a&gt;: choose icons from a known set, use them consistently, and make their purpose clear in context.&lt;/p&gt;
&lt;h2 id="icon-roles"&gt;Icon roles&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Role&lt;/th&gt;
 &lt;th&gt;Use&lt;/th&gt;
 &lt;th&gt;Guidance&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Navigation&lt;/td&gt;
 &lt;td&gt;Section identity, previous/next cues, external links&lt;/td&gt;
 &lt;td&gt;Pair with text unless the icon is universally understood and labelled for assistive technology.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Actions&lt;/td&gt;
 &lt;td&gt;Copy, download, search, open, close, theme toggle&lt;/td&gt;
 &lt;td&gt;Use familiar symbols and preserve hover, pressed, and focus states.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Status&lt;/td&gt;
 &lt;td&gt;Success, warning, danger, blocked, expired, maintenance&lt;/td&gt;
 &lt;td&gt;Pair with visible text. Do not rely on color or icon shape alone.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Metadata&lt;/td&gt;
 &lt;td&gt;GitHub, RSS, social, file type, language&lt;/td&gt;
 &lt;td&gt;Keep small and subordinate to the label or value.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Illustration&lt;/td&gt;
 &lt;td&gt;Product concepts or brand storytelling&lt;/td&gt;
 &lt;td&gt;Use sparingly; documentation should remain useful before it becomes expressive.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="style"&gt;Style&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Prefer a consistent outline style for interface icons.&lt;/li&gt;
&lt;li&gt;Use filled icons only when the state or icon set requires it, such as selected status or social marks.&lt;/li&gt;
&lt;li&gt;Keep icon stroke, size, and optical weight balanced with adjacent text.&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;1em&lt;/code&gt; icons inside inline text and stable square dimensions for icon buttons.&lt;/li&gt;
&lt;li&gt;Do not mix unrelated icon libraries in the same control group.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="accessibility"&gt;Accessibility&lt;/h2&gt;
&lt;p&gt;Decorative icons should be hidden from assistive technology. Informative icons need an accessible name or nearby text that carries the same meaning.&lt;/p&gt;</description></item><item><title>Diagrams and code</title><link>https://brand.vanityurls.link/design-language/diagrams-and-code/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/diagrams-and-code/</guid><description>&lt;p&gt;vanityURLs is a technical product, so diagrams and code examples are part of the brand language. They should clarify behavior, not decorate the page.&lt;/p&gt;
&lt;h2 id="mermaid-diagrams"&gt;Mermaid diagrams&lt;/h2&gt;
&lt;p&gt;Use Mermaid for redirect flows, deployment paths, routing decisions, and lifecycle diagrams.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Keep diagrams small enough to understand without zooming.&lt;/li&gt;
&lt;li&gt;Label edges with real conditions such as &lt;code&gt;alias found&lt;/code&gt;, &lt;code&gt;blocked&lt;/code&gt;, &lt;code&gt;expired&lt;/code&gt;, or &lt;code&gt;fallback&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Prefer left-to-right flow for request pipelines.&lt;/li&gt;
&lt;li&gt;Use diagrams to explain behavior that would be harder to parse as prose.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="code-blocks"&gt;Code blocks&lt;/h2&gt;
&lt;p&gt;Code blocks use Chroma class-based highlighting and copy buttons. Keep examples complete enough to run or recognize.&lt;/p&gt;</description></item><item><title>Interaction</title><link>https://brand.vanityurls.link/design-language/interaction/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/interaction/</guid><description>&lt;p&gt;Interactions should be predictable, quick to understand, and visibly reversible when the action is local.&lt;/p&gt;
&lt;p&gt;The interaction guidance builds from the &lt;a href="https://ux.redhat.com/foundations/interactions/links/"&gt;Red Hat links foundation&lt;/a&gt;: links connect users to pages, sections, and resources; buttons perform actions on the current surface. That distinction matters on vanityURLs because generated pages often ask visitors to decide whether to continue, inspect, or report a link.&lt;/p&gt;
&lt;h2 id="navigation"&gt;Navigation&lt;/h2&gt;
&lt;p&gt;The documentation uses active sidebar states, mobile navigation, anchor links, previous and next links, and an optional table of contents. Preserve those patterns so users can move through reference content without relearning the site.&lt;/p&gt;</description></item><item><title>Dark mode and themes</title><link>https://brand.vanityurls.link/design-language/dark-mode-and-themes/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://brand.vanityurls.link/design-language/dark-mode-and-themes/</guid><description>&lt;p&gt;The website uses Tailwind&amp;rsquo;s class-based dark mode. Theme changes should feel like the same system under different lighting, not like a separate brand.&lt;/p&gt;
&lt;h2 id="theme-behavior"&gt;Theme behavior&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Initialize the selected theme before paint when possible.&lt;/li&gt;
&lt;li&gt;Preserve active navigation, focus, hover, and selected states in both themes.&lt;/li&gt;
&lt;li&gt;Keep code highlighting readable on light and dark backgrounds.&lt;/li&gt;
&lt;li&gt;Avoid theme-specific content unless the asset itself requires a light or dark version.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="color-in-dark-mode"&gt;Color in dark mode&lt;/h2&gt;
&lt;p&gt;Use teal accents sparingly on dark surfaces. Brand teal should identify links, selected states, and important accents; it should not become the background for every panel.&lt;/p&gt;</description></item></channel></rss>