Use when designing iOS interfaces, implementing accessibility (VoiceOver, Dynamic Type), handling dark mode, ensuring adequate touch targets, providing animation/haptic feedback, or requesting user permissions. Apple Human Interface Guidelines for iOS compliance.
View on GitHubjohnrogers/claude-swift-engineering
swift-engineering
February 5, 2026
Select agents to install to:
npx add-skill https://github.com/johnrogers/claude-swift-engineering/blob/main/plugins/swift-engineering/skills/ios-hig/SKILL.md -a claude-code --skill ios-higInstallation paths:
.claude/skills/ios-hig/# iOS Human Interface Guidelines Apple's Human Interface Guidelines define the visual language, interaction patterns, and accessibility standards that make iOS apps feel native and intuitive. The core principle: clarity and consistency through thoughtful design. ## Reference Loading Guide **ALWAYS load reference files if there is even a small chance the content may be required.** It's better to have the context than to miss a pattern or make a mistake. | Reference | Load When | |-----------|-----------| | **[Interaction](references/interaction.md)** | Touch targets, navigation, layout, hierarchy, or gesture patterns | | **[Content](references/content.md)** | Empty states, writing copy, typography, or placeholder text | | **[Visual Design](references/visual-design.md)** | Colors, materials, contrast, dark mode, or SF Symbols | | **[Accessibility](references/accessibility.md)** | VoiceOver, Dynamic Type, Reduce Motion, or accessibility labels | | **[Feedback](references/feedback.md)** | Animations, haptics, loading states, or error messages | | **[Performance](references/performance-platform.md)** | Responsiveness, system components, or app launch | | **[Privacy](references/privacy-permissions.md)** | Permission requests, data handling, or privacy-sensitive APIs | ## Common Mistakes 1. **Touch targets smaller than 44x44 points** — Buttons and interactive elements must be at least 44x44 points (iOS) to accommodate thumbs. Smaller targets cause frustrated users and accessibility failures. 2. **Ignoring Dynamic Type constraints** — Text with fixed sizes doesn't respect user accessibility settings. Use Dynamic Type sizes, test with Large or Extra Large settings, and avoid hardcoded font sizes. 3. **Insufficient color contrast in dark mode** — Colors that work in light mode may fail accessibility in dark mode. Test with Reduce Contrast accessibility setting enabled for both modes. 4. **Over-animating transitions** — Animations that feel smooth at 60fps can trigger