Skip to content
Back to skills

God Typography

ASecurity

Typography system design - type scales, font pairing with Google Fonts, measure/leading/tracking rules, hierarchy, variable fonts, OpenType features, web font loading, and multi-script typesetting (Turkish, Arabic/Persian RTL, CJK, Devanagari, Thai, Cyrillic, Greek). Use when choosing fonts, fixing text that looks off, building a type scale, or designing for non-Latin languages.

  • 3 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 18, 2026
ai-agentsgo

Works with

  • claude code
  • cursor
  • cli

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned October 18, 2026

npx -y skills add cumabozkurt/god-of-design --skill god-typography --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of God Typography?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for God Typography
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/cumabozkurt-god-typography/badge)](https://www.skillsdirectory.com/skills/cumabozkurt-god-typography)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: god-typography
description: Typography system design - type scales, font pairing with Google Fonts, measure/leading/tracking rules, hierarchy, variable fonts, OpenType features, web font loading, and multi-script typesetting (Turkish, Arabic/Persian RTL, CJK, Devanagari, Thai, Cyrillic, Greek). Use when choosing fonts, fixing text that looks off, building a type scale, or designing for non-Latin languages.
license: MIT
compatibility: Agent Skills standard (Claude Code, Codex, OpenCode, Cursor, Gemini CLI, Antigravity, Copilot)
metadata:
  pack: god-of-design
  version: "1.1.2"
---

# God Typography

## Procedure

1. **Voice first.** Describe the voice in 3 words (e.g. "precise, calm, Turkish-modern"). Pick a display face that *is* that voice and a text face that disappears into reading.
2. **One or two families.** One superfamily (e.g. `IBM Plex Sans` + `IBM Plex Mono`) or a high-contrast pair (serif display + sans body, or the reverse). Pairs must differ clearly. Two similar sans faces look like a mistake.
3. **Set a modular scale.** Base 16–18px body on screen. Ratio: 1.125 (dense UI), 1.2 (apps), 1.25 (marketing), 1.333 (editorial), 1.5–1.618 (posters). Use fluid sizes with `clamp()`.
4. **Set measure, leading, tracking.**
   - Measure: 45–75 characters (66 is ideal) for body; `max-width: 65ch`.
   - Leading: body 1.5–1.7 (Latin), headings 1.0–1.2, CJK body 1.7–2.0, Arabic 1.6–1.9, Devanagari 1.6–1.8.
   - Tracking: tighten large display (−0.01 to −0.04em), loosen ALL CAPS and small labels (+0.04 to +0.12em). Never letter-space lowercase body text.
5. **Hierarchy with few levers.** Change size *or* weight *or* colour per level, not all three. Usually 3–4 levels are enough.
6. **Check language support.** Every font you pick must contain the glyphs of the content language. For Turkish: `ç ğ ı İ ö ş ü Ç Ğ Ö Ş Ü`, and `text-transform: uppercase` needs `lang="tr"` so i → İ (not I). Test with "İstanbul'da ığdır şehri çiçekleri görüyorüz" or similar.
7. **Load fast.** Load 2–4 files maximum. Use variable fonts, `font-display: swap`, `preconnect` to Google Fonts, `size-adjust` fallbacks to avoid layout shift, and subset where possible.

## Fluid scale example (ratio 1.25, 16→18px body)

```css
:root {
  --step--1: clamp(0.83rem, 0.80rem + 0.15vw, 0.90rem);
  --step-0:  clamp(1.00rem, 0.95rem + 0.25vw, 1.125rem);
  --step-1:  clamp(1.25rem, 1.17rem + 0.40vw, 1.41rem);
  --step-2:  clamp(1.56rem, 1.43rem + 0.65vw, 1.76rem);
  --step-3:  clamp(1.95rem, 1.75rem + 1.00vw, 2.20rem);
  --step-4:  clamp(2.44rem, 2.12rem + 1.60vw, 2.75rem);
  --step-5:  clamp(3.05rem, 2.55rem + 2.50vw, 3.43rem);
}
h1 { font-size: var(--step-5); line-height: 1.05;
     letter-spacing: -0.02em; text-wrap: balance; }
p  { font-size: var(--step-0); line-height: 1.6; max-width: 65ch; text-wrap: pretty; }
```

## Avoid (common tells)

- Inter / Roboto / Arial for everything by default. Choose deliberately; Inter is fine when it is a reasoned choice.
- Centered body paragraphs longer than 3 lines.
- Light weights (≤300) for small text, and grey-on-grey below 4.5:1.
- Faux bold/italic (synthesised). Load the real weights.
- More than 2 typefaces (a mono for code is the allowed third).
- Widows/orphans on headlines. Use `text-wrap: balance`.

See `references/font-pairings.md` (60+ Google Fonts pairings by mood) and `references/multiscript.md` (non-Latin setting rules).

Files in this skill

  • SKILL.md3.4 KB
  • references/font-pairings.md5.7 KB
  • references/multiscript.md4 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.