dynamic-type-support

Detects fixed font sizes and fixed-height text containers that break Dynamic Type scaling in iOS projects.

Updated Aug 14, 2026
One-click install
npx skills add https://github.com/tvh25082004/Badminton --skill dynamic-type-support-tvh25082004
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: dynamic-type-support
Source: https://github.com/tvh25082004/Badminton/tree/main/.claude/skills/apple-app-review/layout/dynamic-type-support
Command: npx skills add https://github.com/tvh25082004/Badminton --skill dynamic-type-support-tvh25082004

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? iOS apps that hard-code font sizes or constrain text in fixed-height containers fail to scale with the user's preferred reading size, causing clipped or unreadable text and App Store rejections under Apple's HIG Typography guidelines. ## Core Features & Use Cases - Fixed Font Detection: Greps Swift and Objective-C sources for .system(size:) and UIFont.systemFont(ofSize:) calls not wrapped in UIFontMetrics scaling. - Layout Clipping Checks: Finds fixed-height frames and minimumScaleFactor suppression patterns that clip or shrink text at large accessibility sizes. - Prioritized Findings Report: Outputs findings tiered from CRITICAL to LOW with file paths, line numbers, and exact remediation steps. - Use Case: Before submitting an app update, run this audit on your SwiftUI/UIKit codebase to catch every label that will clip at XXL accessibility text sizes and fix them with semantic fonts or UIFontMetrics. ## Quick Start Audit my iOS project for Dynamic Type violations and list every fixed font size and fixed-height text container with its file and line number.

Frequently Asked Questions about dynamic-type-support

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I check my iOS app for Dynamic Type support issues?▼

Run this audit on your project root to grep Swift and Objective-C files for fixed font sizes, fixed-height text containers, and minimumScaleFactor suppression. It reports each violation with file path, line number, and the exact fix such as semantic fonts or UIFontMetrics.

How to make custom fonts scale with Dynamic Type in UIKit?▼

Wrap custom fonts with UIFontMetrics, for example UIFontMetrics(forTextStyle: .body).scaledFont(for: font), and set adjustsFontForContentSizeCategory = true on labels. The audit flags any UIFont(name:) or systemFont(ofSize:) call missing this scaling.

Does this work with SwiftUI as well as UIKit projects?▼

Yes, it scans both. For SwiftUI it flags .font(.system(size:)) numeric literals and recommends semantic styles like .body or .headline; for UIKit it checks UIFont usage against UIFontMetrics coverage. It also notes storyboard and xib files for manual review.

Why does text get clipped at large accessibility font sizes?▼

Clipping happens when labels sit inside fixed-height containers, such as a hardcoded 44pt UITableViewCell or a SwiftUI .frame(height:) modifier, so text overflows the boundary at larger Dynamic Type sizes. The fix is to let containers size to their content.

Does the audit modify my source code or require network access?▼

No, it is strictly read-only and makes no network calls. It only uses Glob, Grep, and Read to inspect files and produce a findings report; all fixes are applied manually by the developer.