Copy
How UI text is written — voice, casing, labels, errors, confirmations. This doc owns what text says; typography owns how it looks.
Voice
- Short, direct, imperative: “Add locations”, “Adjust your budget”.
Casing
- Sentence case everywhere — headings, buttons, labels, menu items, dialog titles: “Add sites to your selection”, never “Add Sites To Your Selection”. Capitalize only the first word and proper nouns (“Lower Saxony”). This is the single most common AI-generated-copy mistake — English training data pulls toward Title Case. [research]
- Exception: tiny status/eyebrow labels (badges like “ads needed”, sidebar section
labels) may render ALL CAPS with letter-spacing — apply it via the
uppercaseCSS utility so the source string and translations stay sentence case. - German copy follows German orthography (nouns capitalized) — this rule bans English Title Case; it never overrides a language’s own rules.
Action labels
- Label = verb + object: “Pay now”, “Send offer” — never “OK”, “Yes” or bare “Submit”. [research]
Error messages
- Say what to do, not what went wrong: “Enter a company name”, not “This field is required”. Unique message per field.
Confirmations
- Confirmations of destructive actions repeat the object and its scope (“Delete 3 line items”). [research]
Related
- docs/patterns/typography.md — the visual side: roles, scale, mono, numbers.
- docs/patterns/action-hierarchy.md — which action gets which emphasis.
- docs/patterns/forms.md — where error messages appear and how they are wired up.