Apple Human Interface Guidelines Skill
Design exceptional experiences for Apple platforms following official Apple HIG principles, patterns, and best practices.
Core Design Principles
Clarity
- Text must be legible at every size
- Icons should be precise and lucid
- Adornments are subtle and appropriate
- Functionality is obvious through focus on content
Deference
- Content fills the entire screen while UI stays out of the way
- Translucency and blurring hint at more content
- Minimal use of bezels, gradients, and shadows keeps interface light and airy
Depth
- Visual layers and realistic motion convey hierarchy and vitality
- Touch and discoverability heighten delight
- Smooth transitions maintain spatial orientation
Platform-Specific Guidelines
###iOS / iPadOS
Key Characteristics:
- Touch-first interaction
- Portrait and landscape orientations
- Safe area respect (notch, Dynamic Island, home indicator)
- Gestures: swipe, tap, long press, pinch, rotate
Layout:
- Use SF Pro text (system font)
- Respect safe areas and readable content guides
- Adopt Auto Layout for adaptive interfaces
- Support Dynamic Type for accessibility
Navigation:
- Tab Bar: 3-5 primary destinations, always visible
- Navigation Bar: Hierarchical browsing, back button
- Search: Prominent when important to app experience
For complete iOS patterns, see references/ios.md
macOS
Key Characteristics:
- Mouse/trackpad/keyboard interaction
- Resizable windows
- Menu bar at top of screen
- Dock for launching apps
Layout:
- Use SF Pro (system font)
- Window controls (close, minimize, zoom) on left
- Sidebars for navigation (leading edge)
- Toolbars for primary actions
Interaction:
- Right-click context menus
- Keyboard shortcuts (⌘ Command key)
- Drag and drop between windows
For complete macOS patterns, see references/macos.md
watchOS
Key Characteristics:
- Glanceable information
- Quick interactions
- Digital Crown and side button
- Always-on display support
Layout:
- SF Compact (rounded system font for watches)
- Edge-to-edge content
- Vertical scrolling preferred
Interaction:
- Tap: Primary action
- Digital Crown: Scroll and zoom
- Force Touch: (older models) Context menu
- Raise to wake
For complete watchOS patterns, see references/watchos.md
tvOS
Key Characteristics:
- 10-foot viewing distance
- Siri Remote (directional pad + touch)
- Focus-driven navigation
- Parallax effects
Layout:
- SF Pro (system font)
- Large touch targets (minimum 250pt)
- Grid layouts for content
- Focus engine handles navigation
Interaction:
- Directional: Up/down/left/right focus movement
- Select (click): Primary action
- Menu: Back navigation
- Siri: Voice commands
For complete tvOS patterns, see references/tvos.md
visionOS
Key Characteristics:
- Spatial computing environment
- 3D depth and windows
- Eye tracking + hand gestures
- Immersive and windowed modes
Layout:
- Depth and layers in 3D space
- Glass materials with vibrancy
- SF Pro (system font)
Interaction:
- Gaze + pinch: Primary selection
- Hand gestures: Tap, drag, rotate
- Voice: Siri commands
- Immersion: Dial controls environment blend
For complete visionOS patterns, see references/visionos.md
Typography
SF Symbols
- 6,000+ icons designed by Apple
- Variable weight and scale (Ultralight to Black)
- Multicolor, hierarchical, palette, monochrome rendering modes
- SF Symbols 6 latest version
Usage:
Image(systemName: "star.fill")
Image(systemName: "heart.circle.fill")
Guidelines:
- Match symbol weight to text weight
- Use filled variants for selected states
- Leverage multicolor for semantic meaning
San Francisco (SF)
Apple's system font family optimized for legibility:
- SF Pro: iOS, macOS, tvOS
- SF Compact: watchOS (rounded)
- SF Mono: Code and tabular data
- SF Arabic, SF Hebrew: Localized variants
Text Styles (Dynamic Type):
- Large Title, Title 1/2/3
- Headline, Body, Callout
- Subheadline, Footnote, Caption 1/2
Always support Dynamic Type for accessibility.
Color
System Colors
Use semantic colors that adapt to light/dark mode:
- Label: Primary text
- Secondary Label: Secondary text
- Tertiary Label: Disabled text
- System Background: Main background
- System Fill: Fill colors for UI elements
Accent Colors
- Use accent color for interactive elements (buttons, links)
- Ensure sufficient contrast (WCAG AA: 4.5:1 for text)
- Test in both light and dark modes
Vibrancy
- Materials: Blur backgrounds to show depth
- Vibrancy: Colors that adapt to material behind them
Components
iOS Components
Buttons:
- Filled, Tinted, Gray, Plain styles
- Size: Small, Medium, Large
- Use SF Symbols for icons
Lists:
- Inset grouped style (modern iOS)
- Swipe actions (leading/trailing)
- Context menus
Sheets:
- Modal presentation
- Detents: medium, large
- Drag to dismiss
Navigation:
- Large titles (iOS 11+)
- Inline titles for scrolled state
- Search bar integration
For all iOS components, see references/ios-components.md
macOS Components
Windows:
- Standard, utility, panel types
- Titlebar styles: default, transparent, unified
- Sidebars and split views
Toolbars:
- Icon + text or icon-only buttons
- Segmented controls for views
- Search fields
For all macOS components, see references/macos-components.md
Layout & Spacing
Grid System
- 8pt grid as baseline (iOS, macOS)
- Margins: 16pt (iPhone), 20pt (iPad), 20pt (Mac)
- Spacing: 8pt, 16pt, 24pt, 32pt standard increments
Safe Areas
- Top: Status bar, notch, Dynamic Island
- Bottom: Home indicator (iPhone), dock (iPad)
- Leading/Trailing: Avoid placing content too close to edges
Adaptive Layouts
- Size classes: Compact, Regular (width/height)
- Trait variations: Light/Dark mode, Dynamic Type sizes
- Support landscape and portrait
Accessibility
VoiceOver
- Provide meaningful accessibility labels
- Group related elements
- Ensure logical focus order
Dynamic Type
- Support all text sizes (from -3 to +7 default)
- Test at Accessibility sizes (AX1-AX5)
- Use scalable fonts and layouts
Color Contrast
- WCAG AA: 4.5:1 for normal text, 3:1 for large text
- WCAG AAA: 7:1 for normal text, 4.5:1 for large text
- Test with grayscale and color blindness modes
Reduce Motion
- Provide alternatives to animations
- Use crossfade instead of slides when motion reduced
Interaction Patterns
Gestures (iOS/iPadOS)
- Tap: Primary action
- Long press: Context menu or drag preview
- Swipe: Navigate, delete, reveal actions
- Pinch: Zoom in/out
- Rotate: Rotate content
- Edge swipe: Back navigation
Haptics (iOS)
- Impact: Physical collision or boundary
- Notification: Success, warning, error
- Selection: Picker or toggle change
Keyboard Shortcuts (macOS/iPadOS)
- ⌘ Command: Primary actions (⌘N new, ⌘S save)
- ⇧ Shift: Modify command (⇧⌘S save as)
- ⌥ Option: Alternative behavior
- ⌃ Control: Context-specific
Animation & Motion
Duration
- Quick: 0.2-0.3s (button press, small transitions)
- Standard: 0.3-0.5s (screen transitions, sheets)
- Slow: 0.5-0.8s (complex, spatial transitions)
Easing
- Ease In/Out: Standard for most animations
- Spring: Natural, playful motion
- Linear: Progress indicators only
Principles
- Continuity: Elements smoothly transition
- Anticipation: Hint at upcoming change
- Follow-through: Motion completes naturally
Dark Mode
Guidelines
- Test both modes during development
- Use semantic colors (system colors adapt automatically)
- Elevate surfaces with subtle color increases (not just lighter)
- Avoid pure black (#000000) — use dark gray for true blacks
Materials
- iOS:
.systemBackground, .secondarySystemBackground, .tertiarySystemBackground
- macOS:
.windowBackgroundColor, .controlBackgroundColor
Platform Integration
iOS Features
- Widgets: Home Screen, Lock Screen, StandBy
- Live Activities: Dynamic Island, Lock Screen
- App Clips: Lightweight app experiences
- Shortcuts: Siri Shortcuts integration
- App Intents: System-level actions
macOS Features
- Menu Bar: Global app menus
- Dock: App icon with badges
- Touch Bar: (older MacBook Pros)
- Extensions: Share, Today, Finder
- Continuity: Handoff, Universal Clipboard
Quick Reference
| Platform |
Font |
Grid |
Safe Areas |
Primary Interaction |
| iOS |
SF Pro |
8pt |
Yes (notch/home indicator) |
Touch |
| macOS |
SF Pro |
8pt |
No |
Mouse/keyboard |
| watchOS |
SF Compact |
- |
Yes (round/square) |
Digital Crown + tap |
| tvOS |
SF Pro |
- |
Yes (overscan) |
Siri Remote focus |
| visionOS |
SF Pro |
- |
Yes (spatial bounds) |
Gaze + gesture |
Resources
- iOS Patterns - Complete iOS component library
- macOS Patterns - Complete macOS component library
- watchOS Patterns - Complete watchOS component library
- tvOS Patterns - Complete tvOS component library
- visionOS Patterns - Complete visionOS patterns
- iOS Components Reference - All iOS UIKit/SwiftUI components
- macOS Components Reference - All macOS AppKit/SwiftUI components
Based on Apple Human Interface Guidelines - https://developer.apple.com/design/human-interface-guidelines
1---2name: apple-hig3description: Expert guide for designing iOS, macOS, watchOS, tvOS, and visionOS apps following Apple Human Interface Guidelines. Use when building Apple platform apps or interfaces, implementing SF Symbols, designing with iOS components, following accessibility guidelines, or creating native Apple experiences. Covers design principles, patterns, components, typography, color, layout, navigation, and platform-specific conventions.4---56# Apple Human Interface Guidelines Skill78Design exceptional experiences for Apple platforms following official Apple HIG principles, patterns, and best practices.910## Core Design Principles1112### Clarity13- **Text must be legible** at every size14- **Icons should be precise and lucid**15- **Adornments are subtle and appropriate**16- **Functionality is obvious through focus on content**1718### Deference19- **Content fills the entire screen** while UI stays out of the way20- **Translucency and blurring** hint at more content21- **Minimal use of bezels, gradients, and shadows** keeps interface light and airy2223### Depth24- **Visual layers and realistic motion** convey hierarchy and vitality25- **Touch and discoverability** heighten delight26- **Smooth transitions** maintain spatial orientation2728## Platform-Specific Guidelines2930###iOS / iPadOS3132**Key Characteristics:**33- Touch-first interaction34- Portrait and landscape orientations35- Safe area respect (notch, Dynamic Island, home indicator)36- Gestures: swipe, tap, long press, pinch, rotate3738**Layout:**39- Use **SF Pro** text (system font)40- Respect safe areas and readable content guides41- Adopt **Auto Layout** for adaptive interfaces42- Support **Dynamic Type** for accessibility4344**Navigation:**45- **Tab Bar:** 3-5 primary destinations, always visible46- **Navigation Bar:** Hierarchical browsing, back button47- **Search:** Prominent when important to app experience4849For complete iOS patterns, see [references/ios.md](references/ios.md)5051### macOS5253**Key Characteristics:**54- Mouse/trackpad/keyboard interaction55- Resizable windows56- Menu bar at top of screen57- Dock for launching apps5859**Layout:**60- Use **SF Pro** (system font)61- Window controls (close, minimize, zoom) on left62- **Sidebars** for navigation (leading edge)63- **Toolbars** for primary actions6465**Interaction:**66- Right-click context menus67- Keyboard shortcuts (⌘ Command key)68- Drag and drop between windows6970For complete macOS patterns, see [references/macos.md](references/macos.md)7172### watchOS7374**Key Characteristics:**75- Glanceable information76- Quick interactions77- Digital Crown and side button78- Always-on display support7980**Layout:**81- **SF Compact** (rounded system font for watches)82- Edge-to-edge content83- Vertical scrolling preferred8485**Interaction:**86- **Tap:** Primary action87- **Digital Crown:** Scroll and zoom88- **Force Touch:** (older models) Context menu89- **Raise to wake**9091For complete watchOS patterns, see [references/watchos.md](references/watchos.md)9293### tvOS9495**Key Characteristics:**96- 10-foot viewing distance97- Siri Remote (directional pad + touch)98- Focus-driven navigation99- Parallax effects100101**Layout:**102- **SF Pro** (system font)103- Large touch targets (minimum 250pt)104- Grid layouts for content105- Focus engine handles navigation106107**Interaction:**108- **Directional:** Up/down/left/right focus movement109- **Select (click):** Primary action110- **Menu:** Back navigation111- **Siri:** Voice commands112113For complete tvOS patterns, see [references/tvos.md](references/tvos.md)114115### visionOS116117**Key Characteristics:**118- Spatial computing environment119- 3D depth and windows120- Eye tracking + hand gestures121- Immersive and windowed modes122123**Layout:**124- **Depth and layers** in 3D space125- **Glass materials** with vibrancy126- **SF Pro** (system font)127128**Interaction:**129- **Gaze + pinch:** Primary selection130- **Hand gestures:** Tap, drag, rotate131- **Voice:** Siri commands132- **Immersion:** Dial controls environment blend133134For complete visionOS patterns, see [references/visionos.md](references/visionos.md)135136## Typography137138### SF Symbols139- **6,000+ icons** designed by Apple140- **Variable weight and scale** (Ultralight to Black)141- **Multicolor, hierarchical, palette, monochrome** rendering modes142- **SF Symbols 6** latest version143144**Usage:**145```swift146Image(systemName: "star.fill")147Image(systemName: "heart.circle.fill")148```149150**Guidelines:**151- Match symbol weight to text weight152- Use filled variants for selected states153- Leverage multicolor for semantic meaning154155### San Francisco (SF)156Apple's system font family optimized for legibility:157158- **SF Pro:** iOS, macOS, tvOS159- **SF Compact:** watchOS (rounded)160- **SF Mono:** Code and tabular data161- **SF Arabic, SF Hebrew:** Localized variants162163**Text Styles (Dynamic Type):**164- Large Title, Title 1/2/3165- Headline, Body, Callout166- Subheadline, Footnote, Caption 1/2167168**Always support Dynamic Type** for accessibility.169170## Color171172### System Colors173Use semantic colors that adapt to light/dark mode:174175- **Label:** Primary text176- **Secondary Label:** Secondary text177- **Tertiary Label:** Disabled text178- **System Background:** Main background179- **System Fill:** Fill colors for UI elements180181### Accent Colors182- Use **accent color** for interactive elements (buttons, links)183- Ensure **sufficient contrast** (WCAG AA: 4.5:1 for text)184- Test in **both light and dark modes**185186### Vibrancy187- **Materials:** Blur backgrounds to show depth188- **Vibrancy:** Colors that adapt to material behind them189190## Components191192### iOS Components193194**Buttons:**195- Filled, Tinted, Gray, Plain styles196- Size: Small, Medium, Large197- Use SF Symbols for icons198199**Lists:**200- Inset grouped style (modern iOS)201- Swipe actions (leading/trailing)202- Context menus203204**Sheets:**205- Modal presentation206- Detents: medium, large207- Drag to dismiss208209**Navigation:**210- Large titles (iOS 11+)211- Inline titles for scrolled state212- Search bar integration213214For all iOS components, see [references/ios-components.md](references/ios-components.md)215216### macOS Components217218**Windows:**219- Standard, utility, panel types220- Titlebar styles: default, transparent, unified221- Sidebars and split views222223**Toolbars:**224- Icon + text or icon-only buttons225- Segmented controls for views226- Search fields227228For all macOS components, see [references/macos-components.md](references/macos-components.md)229230## Layout & Spacing231232### Grid System233- **8pt grid** as baseline (iOS, macOS)234- **Margins:** 16pt (iPhone), 20pt (iPad), 20pt (Mac)235- **Spacing:** 8pt, 16pt, 24pt, 32pt standard increments236237### Safe Areas238- **Top:** Status bar, notch, Dynamic Island239- **Bottom:** Home indicator (iPhone), dock (iPad)240- **Leading/Trailing:** Avoid placing content too close to edges241242### Adaptive Layouts243- **Size classes:** Compact, Regular (width/height)244- **Trait variations:** Light/Dark mode, Dynamic Type sizes245- Support **landscape and portrait**246247## Accessibility248249### VoiceOver250- Provide meaningful **accessibility labels**251- Group related elements252- Ensure logical **focus order**253254### Dynamic Type255- Support all text sizes (from -3 to +7 default)256- Test at **Accessibility sizes** (AX1-AX5)257- Use **scalable fonts** and layouts258259### Color Contrast260- **WCAG AA:** 4.5:1 for normal text, 3:1 for large text261- **WCAG AAA:** 7:1 for normal text, 4.5:1 for large text262- Test with **grayscale** and **color blindness** modes263264### Reduce Motion265- Provide alternatives to animations266- Use **crossfade** instead of slides when motion reduced267268## Interaction Patterns269270### Gestures (iOS/iPadOS)271- **Tap:** Primary action272- **Long press:** Context menu or drag preview273- **Swipe:** Navigate, delete, reveal actions274- **Pinch:** Zoom in/out275- **Rotate:** Rotate content276- **Edge swipe:** Back navigation277278### Haptics (iOS)279- **Impact:** Physical collision or boundary280- **Notification:** Success, warning, error281- **Selection:** Picker or toggle change282283### Keyboard Shortcuts (macOS/iPadOS)284- **⌘ Command:** Primary actions (⌘N new, ⌘S save)285- **⇧ Shift:** Modify command (⇧⌘S save as)286- **⌥ Option:** Alternative behavior287- **⌃ Control:** Context-specific288289## Animation & Motion290291### Duration292- **Quick:** 0.2-0.3s (button press, small transitions)293- **Standard:** 0.3-0.5s (screen transitions, sheets)294- **Slow:** 0.5-0.8s (complex, spatial transitions)295296### Easing297- **Ease In/Out:** Standard for most animations298- **Spring:** Natural, playful motion299- **Linear:** Progress indicators only300301### Principles302- **Continuity:** Elements smoothly transition303- **Anticipation:** Hint at upcoming change304- **Follow-through:** Motion completes naturally305306## Dark Mode307308### Guidelines309- **Test both modes** during development310- Use **semantic colors** (system colors adapt automatically)311- **Elevate** surfaces with subtle color increases (not just lighter)312- **Avoid pure black** (#000000) — use dark gray for true blacks313314### Materials315- iOS: `.systemBackground`, `.secondarySystemBackground`, `.tertiarySystemBackground`316- macOS: `.windowBackgroundColor`, `.controlBackgroundColor`317318## Platform Integration319320### iOS Features321- **Widgets:** Home Screen, Lock Screen, StandBy322- **Live Activities:** Dynamic Island, Lock Screen323- **App Clips:** Lightweight app experiences324- **Shortcuts:** Siri Shortcuts integration325- **App Intents:** System-level actions326327### macOS Features328- **Menu Bar:** Global app menus329- **Dock:** App icon with badges330- **Touch Bar:** (older MacBook Pros)331- **Extensions:** Share, Today, Finder332- **Continuity:** Handoff, Universal Clipboard333334## Quick Reference335336| Platform | Font | Grid | Safe Areas | Primary Interaction |337|----------|------|------|------------|-------------------|338| iOS | SF Pro | 8pt | Yes (notch/home indicator) | Touch |339| macOS | SF Pro | 8pt | No | Mouse/keyboard |340| watchOS | SF Compact | - | Yes (round/square) | Digital Crown + tap |341| tvOS | SF Pro | - | Yes (overscan) | Siri Remote focus |342| visionOS | SF Pro | - | Yes (spatial bounds) | Gaze + gesture |343344---345346## Resources347348- [iOS Patterns](references/ios.md) - Complete iOS component library349- [macOS Patterns](references/macos.md) - Complete macOS component library350- [watchOS Patterns](references/watchos.md) - Complete watchOS component library 351- [tvOS Patterns](references/tvos.md) - Complete tvOS component library352- [visionOS Patterns](references/visionos.md) - Complete visionOS patterns353- [iOS Components Reference](references/ios-components.md) - All iOS UIKit/SwiftUI components354- [macOS Components Reference](references/macos-components.md) - All macOS AppKit/SwiftUI components355356---357358*Based on Apple Human Interface Guidelines - https://developer.apple.com/design/human-interface-guidelines*