home / skills / beshkenadze / claude-skills-marketplace / ios-design-review

ios-design-review skill

/skills/development/ios-design-review

This skill reviews iOS SwiftUI/UIKit code against Apple HIG, highlighting accessibility, typography, layout, and navigation improvements for production-ready

npx playbooks add skill beshkenadze/claude-skills-marketplace --skill ios-design-review

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
3.2 KB
---
name: ios-design-review
description: Review iOS code for Apple HIG compliance. Use when validating SwiftUI/UIKit code, checking accessibility, or auditing iOS design implementation.
version: 1.0.0
---

# iOS Design Review

Validate SwiftUI/UIKit code against Apple Human Interface Guidelines.

## When to Use

- After generating SwiftUI components
- Before submitting iOS code for review
- Auditing existing iOS UI code
- Checking accessibility compliance

## Review Checklist

### 1. Colors & Theming
- [ ] Uses semantic colors (`Color.primary`, `Color(.systemBackground)`)
- [ ] No hardcoded hex colors
- [ ] Works in both Light and Dark mode
- [ ] High contrast mode support

### 2. Typography
- [ ] Uses system fonts (San Francisco)
- [ ] Supports Dynamic Type
- [ ] Proper text styles (`.headline`, `.body`, `.caption`)
- [ ] No fixed font sizes for body text

### 3. Touch Targets
- [ ] Minimum 44×44 points for interactive elements
- [ ] Adequate spacing between tappable items (12-24pt)
- [ ] No gesture conflicts with system gestures

### 4. Accessibility
- [ ] VoiceOver labels on icon-only buttons
- [ ] `accessibilityElement(children: .combine)` for grouped content
- [ ] `accessibilityHidden(true)` for decorative elements
- [ ] Meaningful accessibility hints where needed

### 5. Navigation
- [ ] Tab bar for 2-5 primary destinations (not actions)
- [ ] Navigation titles present
- [ ] Back button behavior correct
- [ ] Modal dismiss patterns (swipe, X button)

### 6. SF Symbols
- [ ] Uses SF Symbols over custom icons where possible
- [ ] Correct rendering mode (monochrome/hierarchical/palette)
- [ ] Symbols scale with Dynamic Type

### 7. Layout
- [ ] Safe area respected
- [ ] Adapts to different screen sizes
- [ ] Proper keyboard avoidance
- [ ] No content clipping

## Review Output Format

```markdown
## HIG Compliance Review

**File:** `Views/SettingsView.swift`

### Issues Found

#### Critical
- Line 45: Touch target too small (32×32pt)
  Fix: Add `.frame(minWidth: 44, minHeight: 44)`

#### Warnings
- Line 23: Hardcoded color `Color(hex: "#FF5733")`
  Fix: Use `Color.accentColor` or semantic color

#### Suggestions
- Line 67: Consider adding accessibilityLabel to icon button

### Summary
- Critical: 1
- Warnings: 1
- Suggestions: 1
- Overall: Needs fixes before shipping
```

## Common Issues

### Color Issues
```swift
// ❌ Problem
Text("Hello").foregroundColor(Color(hex: "#333333"))

// ✅ Fix
Text("Hello").foregroundStyle(.primary)
```

### Touch Target Issues
```swift
// ❌ Problem
Button { } label: {
    Image(systemName: "plus")
}

// ✅ Fix
Button { } label: {
    Image(systemName: "plus")
        .frame(minWidth: 44, minHeight: 44)
}
```

### Accessibility Issues
```swift
// ❌ Problem
Button { delete() } label: {
    Image(systemName: "trash")
}

// ✅ Fix
Button { delete() } label: {
    Image(systemName: "trash")
}
.accessibilityLabel("Delete item")
```

## Usage

```
User: Review this SwiftUI view for HIG compliance
[pastes code]

Claude: [Runs checklist against code]
- Identifies issues by category
- Provides specific line numbers
- Suggests fixes with code examples
```

## Related Skills

- `ios-swiftui-generator` — Generate compliant code
- `ios-hig-reference` — Full HIG reference

Overview

This skill reviews iOS SwiftUI and UIKit code for compliance with Apple Human Interface Guidelines (HIG). It highlights accessibility, color/theming, typography, touch-targets, navigation, SF Symbols, and layout issues with actionable fixes. Use it to catch HIG violations before code review or shipping.

How this skill works

The skill runs a structured checklist against submitted SwiftUI/UIKit source, detecting hardcoded colors, improper fonts, small touch targets, missing VoiceOver labels, navigation and modal pattern problems, SF Symbol misuse, and layout issues. It reports issues with file/line references, severity categories (Critical, Warning, Suggestion), and concrete code fixes or sample snippets to remediate each problem. Output follows a concise HIG Compliance Review format so you can paste findings directly into PRs or issue trackers.

When to use it

  • After generating SwiftUI or UIKit components
  • Before submitting iOS code for review or CI gating
  • Auditing existing iOS UI implementations for HIG compliance
  • Checking accessibility (VoiceOver, Dynamic Type, contrast)
  • Validating theming for Light/Dark and high-contrast modes

Best practices

  • Prefer semantic colors and system backgrounds; avoid hardcoded hex values
  • Use system fonts and Dynamic Type text styles (headline, body, caption) — avoid fixed body sizes
  • Ensure interactive elements are at least 44×44 points and spaced 12–24pt apart
  • Provide accessibilityLabel, accessibilityHint, and combine grouped elements appropriately
  • Use SF Symbols where appropriate and choose correct rendering modes (monochrome, hierarchical, palette)

Example use cases

  • Review a SwiftUI View after code generation to catch accessibility gaps
  • Audit a settings screen for touch-targets, navigation titles, and modal dismiss patterns
  • Scan a large codebase to find hardcoded colors and Dynamic Type violations
  • Validate that icons use SF Symbols and scale correctly with text size
  • Produce a PR-ready HIG Compliance Review with file/line issue list and suggested fixes

FAQ

Can the skill check both SwiftUI and UIKit code?

Yes. It inspects common SwiftUI and UIKit patterns and reports HIG-related issues for both frameworks.

Will it provide exact line numbers and code fixes?

The review aims to include file and line references when provided and gives concrete fix suggestions or code snippets for each issue.