Product copy
UI microcopy patterns
Narrative patterns for product copy. Enforceable rules (sentence case, dialog titles, error tone) are on the design system voice page — linked here, not duplicated.
Navigation
- 5–7 global items max for organizers (Home, Events, Reputation, Organization, Help)
- Sentence case labels
- JTBD names, not internal feature names ("Collect feedback" not "Participants module")
Buttons
| Type | Pattern | Example |
|---|---|---|
| Primary | Verb + noun | Create event · Reply to review · Upgrade plan |
| Secondary | Lower commitment | View sample · See pricing |
| Destructive | Delete [item] | Delete event · Delete widget |
| Cancel | Always "Cancel" | Cancel |
Dialogs
- Title = direct question: "Delete this event?"
- Body = one present-tense sentence on consequence
- Confirm verb matches title: "Delete event" not "Yes" or "Confirm"
Forms
- Visible
<legend>or label — never placeholder-only fields for required questions - Helper text: one line max on
defaultdensity - Validation inline; error under field via
field.tspattern
Toasts
Short outcome statement. No exclamation marks.
- Do: Review published.
- Don't: Success! Your review is now live!
Tooltips and aria-label
Describe the control action, not "Click here". Icon-only buttons require accessible names.
- Do: aria-label="Reply to review"
- Don't: aria-label="Button"
Upgrade prompts
State the limit and what upgrading unlocks. No fake urgency.
- Do: Upgrade plan to embed widgets on your site.
- Don't: Unlock premium power now!
Sporting Scouter Content Style Guide
Component-enforceable rules: design-system.sportingscouter.com/voice. Tokens from
packages/config/tailwind/theme.css.