Install any skill in seconds. Free to start, no credit card required.
Get Started Free →iOS typography applied — the SF family system (SF Pro / Pro Rounded / Mono / New York), Dynamic Type built-in text styles + their point sizes, weights to prefer/avoid, type pairing and label-vs-value hierarchy for a minimal health/nutrition app, tabular/monospaced digits for data, and the concrete SwiftUI font APIs. Use when setting any type on a native iOS screen or building a type scale.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-06 | ✗→✓ | ▲ Improved | 70% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 76% | 0% |
| case-17 | ✓→✗ | ▼ Worse | 88% | 0% |
| case-11 | ✓→✓ | = Same ✓ | 258% | 0% |
| case-01 | ✓→✓ | = Same ✓ | 83% | 0% |
Source: Apple HIG Typography + SwiftUI Font docs, cross-checked across two research passes (June 2026). Apple says: use the built-in text styles, prefer SF, avoid thin weights, support Dynamic Type.
Four system typefaces — SwiftUI selects optical sizes automatically:
.fontDesign(.default)). Auto-switches Text (small) vs Display (large) optical sizes..fontDesign(.rounded))..fontDesign(.monospaced))..fontDesign(.serif)).Weights run Ultralight→Black. Don't embed system fonts — use the Font.Design constants. Default iOS text size is 17 pt; minimum 11 pt.
Use these, not hard-coded sizes — they scale with the user's setting, hit larger accessibility sizes, and switch the SF optical variant automatically.
| Style | Size (pt) | Weight | SwiftUI | |---|---|---|---| | Large Title | 34 | Regular | .largeTitle | | Title 1 | 28 | Regular | .title | | Title 2 | 22 | Regular | .title2 | | Title 3 | 20 | Regular | .title3 | | Headline | 17 | Semibold | .headline | | Body | 17 | Regular | .body | | Callout | 16 | Regular | .callout | | Subheadline | 15 | Regular | .subheadline | | Footnote | 13 | Regular | .footnote | | Caption 1 | 12 | Regular | .caption | | Caption 2 | 11 | Regular | .caption2 |
> Verify-at-source flag: a live-HIG read in this research returned an anomalous spec table (Large Title 31 / Body 14) on the iOS Typography page, conflicting with the canonical values above and with the page's own "default body = 17pt." The 34/17 ramp above is the long-established iOS scale and is what to build to; confirm against Apple Design Resources (Sketch/Figma/Adobe templates) or on-device before locking a production ramp. Tracking/leading are auto-adjusted by the system per point size — don't set them manually.
.fontDesign(.rounded) on large calorie/macro counts gives the friendly modern health-app feel (FoodNoms/Cal-AI) without breaking HIG.Apply .monospacedDigit() to every number that updates or stacks in a column — calorie counts, macro grams, weights. It fixes digit width so values don't "jitter" or misalign as digits change, while leaving text proportional. Omitting it is a top "amateur" tell.
swiftText("Calories").font(.headline) // built-in, scales — PREFER Text("1,840") .font(.system(.largeTitle, design: .rounded)) // style + family, still scales .fontWeight(.bold) .monospacedDigit() // fixed-width digits for data .fontWeight(.semibold) // Regular / Medium / Semibold / Bold .fontDesign(.rounded) // .rounded / .serif / .monospaced / .default .font(.system(size: 17)) // fixed size — bypasses Dynamic Type, use sparingly .font(.custom("YourFont", size: 17, relativeTo: .body)) // custom font that STILL scales
Custom fonts must use relativeTo: or they ignore the user's text-size setting. .monospacedDigit(), .smallCaps(), .leading(.tight/.loose) are all Dynamic-Type-safe.
Oversized/multiple competing Large Titles · thin weights on small text · too many bespoke sizes · non-tabular numbers in data columns · hard-coded .system(size:) that never scales (a11y failure) · using weight as the only hierarchy tool (bolding everything).
.font(.system(size: 38, design: .serif)) titles with built-in styles; reserve one Large Title per screen..system(.largeTitle/.title, design: .rounded).monospacedDigit(); labels in .caption/.footnote secondary color.Pairs with: ios-layout-and-grid (baseline/leading rhythm), ios-color-and-materials (label vs value color), ios-sf-symbols-and-icons (weight matching).
Other measured skills in the registry, with their headline benchmark lift.