Skip to content

Primer branding: use sentence case for header and CTA copy - #324

Draft
github-actions[bot] wants to merge 1 commit into
mainfrom
primer-branding-sentence-case-e2bc9de86c271459
Draft

github-actions[bot] wants to merge 1 commit into
mainfrom
primer-branding-sentence-case-e2bc9de86c271459

Conversation

@github-actions

@github-actions github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

What changed

Voice and tone

  • src/index.html: changed the header subtitle from "Add Agentic Automation to your Repository in minutes" to "Add agentic automation to your repository in minutes".
  • src/index.html: changed the primary CTA label from "Create Your Agentic Workflow" to "Create your agentic workflow".
  • Updated the two Playwright e2e specs (test/e2e/smoke.spec.js, test/e2e/web-llm.spec.js) that locate the CTA by its accessible name, so they keep passing against the new copy.

Brand guidance that motivated this change

Every Primer Brand (@primer/react-brand) component example I retrieved via the primer-brand MCP server (Button, Hero, CTA banner, CTA form, Card) uses sentence case for interactive and heading text — e.g. the canonical Button example reads Primary action, not Primary Action. The two strings above were the only Title Case instances in the markup (confirmed via a full scan with grep -noE '>[A-Z][a-z]+ [A-Z][a-z]+[^<]*<'), and they were inconsistent with the rest of the site's own established sentence-case convention (e.g. "Copy prompt", "Got it", "Report an issue", "Run evals"). This was the most clear-cut, lowest-risk deviation found.

Audit notes — deviations considered but not changed

  • Color: Confirmed computed WCAG contrast ratios for every custom color token in src/styles/style.css (light + dark mode): body text, muted text, accent-blue links, and all six label colors (--label-blue/purple/green/orange/pink/gray) pass AA (ratios 4.67–17.04, lowest being --label-green on white at 5.08:1 — still above the 4.5:1 AA text threshold). No contrast violations found, so no color changes were made.
  • Typography: Primer Brand's Heading/Text components use lighter display weights (~440–480) for marketing headings, versus this site's bold (700) weights for h1 and step/status labels. I did not change this: the site is a product-like wizard UI (progress steps, GitHub-style labels) rather than a marketing page built from Brand Hero/Heading components, so bold condensed UI labels are the appropriate pattern here (consistent with GitHub's own product issue/PR label treatment), not a deviation from Brand's marketing-page type scale.
  • Component architecture: primer_brand_review flagged that no @primer/react-brand components are used and suggested rebuilding with them. Per the task's explicit constraints, I did not restructure the page or swap @primer/css for @primer/react-brand — this repo intentionally uses Primer's product CSS, not the Brand marketing component library.
  • Spacing/gradients: Reviewed --radius-md/--radius-lg (mapped to --borderRadius-medium/-large, 8px/12px) and the existing landing-page radial gradient/shine accents — all derive from this site's own accent-blue token family and pass contrast, so left untouched per the "tasteful shine is allowed" guidance.

Verification

  • npm test — 329/329 tests passed (19 test files), including the updated e2e specs' accessible-name assertions.
  • npm run build — build succeeded (Vite), producing dist/ without errors.

No other files were changed. No application logic, ARIA attributes, or file structure were modified.

Warning

Firewall blocked 2 domains

The following domains were blocked by the firewall during workflow execution:

  • registry.npmjs.org
  • unpkg.com

To allow these domains, add them to the network.allowed list in your workflow frontmatter:

network:
  allowed:
    - defaults
    - "registry.npmjs.org"
    - "unpkg.com"

See Network Configuration for more information.

Generated by Primer Branding · copilot · auto · 180.2 AIC · ⌖ 8.9 AIC · ⊞ 9.5K · ◷

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants