diff --git a/docs/STYLEGUIDE.md b/docs/STYLEGUIDE.md new file mode 100644 index 00000000..05352243 --- /dev/null +++ b/docs/STYLEGUIDE.md @@ -0,0 +1,390 @@ +# Familienarchiv — Design Styleguide + +This document defines the visual language for the Familienarchiv frontend. All UI work should follow these conventions to stay consistent with the De Gruyter Brill corporate identity. + +--- + +## Brand Identity + +The design is based on the **De Gruyter Brill** brand identity (unveiled at Frankfurt Book Fair 2024). Key characteristics: + +- Clean white backgrounds, high contrast +- Strong typographic hierarchy (uppercase labels, serif body text) +- Academic publisher aesthetic: authoritative, clear, uncluttered +- The Melrose purple (`#B4B9FF`) quotation-mark logo is the primary brand signature + +--- + +## Colors + +Defined in `src/routes/layout.css` as `@theme` variables. All generate Tailwind utilities automatically (`bg-*`, `text-*`, `border-*`). + +| Token | Hex | Usage | +|---|---|---| +| `brand-navy` | `#012851` | Primary text, headings, buttons, active states — Prussian Blue | +| `brand-mint` | `#A1DCD8` | Accent color, icon tints, hover underlines — Aqua Island | +| `brand-purple` | `#B4B9FF` | Logo, nav active state highlight, top accent strip — Melrose | +| `brand-sand` | `#F0EFE9` | Subtle card backgrounds, borders, hover backgrounds — paper tone | +| `brand-white` | `#FFFFFF` | Page background, card surfaces | +| `brand-dark` | `#0D0D0D` | Near-black text when maximum contrast is needed | + +### Color usage rules + +- **Never** use raw hex values in components — always use token utilities. +- Page and card backgrounds are **white**. Use `bg-brand-sand` only for subtle inset areas (e.g. `bg-brand-sand/30`). +- `brand-navy` is the workhorse: headings, body text, borders, primary buttons. +- `brand-mint` is an accent only — never use it as primary text color on white (contrast too low). +- `brand-purple` is reserved for the logo and the single top accent strip in the header. + +--- + +## Typography + +### Fonts + +| Role | Font | Tailwind | Notes | +|---|---|---|---| +| Body / Serif | **Tinos** (Times substitute) | `font-serif` | Loaded from Google Fonts. Used for document titles, names, body copy, dates. Matches DGB's use of Times. | +| UI / Sans | **Montserrat** (Gotham substitute) | `font-sans` | Loaded from Google Fonts. Used for labels, navigation, buttons, metadata, form elements. Matches DGB's use of Gotham. | + +### Type scale and usage + +| Element | Classes | Example | +|---|---|---| +| Page title | `font-serif text-3xl text-brand-navy` | `
Versuchen Sie, die Filter anzupassen.
+