hig-foundations — Claude Code skill: Apple HIG design basics
A skill that hands your agent Apple Human Interface Guidelines foundations: color, typography, SF Symbols, dark mode, accessibility. Useful when your UI looks off on Apple platforms.
npx skills add raintree-technology/hig-doctor --skill hig-foundations -a claude-codeWhat hig-foundations does
The skill gives the agent a reference set for Apple design foundations: semantic colors, SF Pro and New York fonts, SF Symbols, materials, motion, privacy, RTL support and inclusive design. It ships as an index of separate files — accessibility.md, color.md, dark-mode.md, typography.md, sf-symbols.md, layout.md, materials.md, motion.md, privacy.md, right-to-left.md, app-icons.md, branding.md, images.md, inclusion.md, writing.md, immersive-experiences.md, spatial-layout.md. The agent pulls the file that matches the question.
Before asking anything, it checks .claude/apple-design-context.md and reuses what is already there. Answers come back as a citation of a specific HIG section, platform differences, concrete SwiftUI, UIKit or AppKit patterns, and a note on accessibility impact — contrast ratios, Dynamic Type scaling, VoiceOver behavior.
The skill is tied to Apple platforms. If you ship a Flutter or React Native app and Apple platforms are not your target, advice on SF Symbols and system materials will not help you. For platform-specific guidance, interaction patterns and components it points to sibling skills: hig-platforms, hig-patterns, hig-components-layout, hig-components-content.
What it helps with
- pick semantic colors that survive dark mode
- choose fonts and sizes that work with Dynamic Type
- match custom icons to SF Symbols weight and style
- check contrast and accessibility of a screen
- mirror a layout for right-to-left languages
Example prompts for the agent
- Check my palette against the HIG — the colors look wrong in dark mode
- What font and sizes should I use for Dynamic Type in SwiftUI?
- My icons don't match the system style, what should I fix?
How to install hig-foundations
1Skills CLI (Vercel)
npx skills add raintree-technology/hig-doctor --skill hig-foundations -a claude-code2Manually: put the files in place
~/.claude/skills/hig-foundations/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/hig-foundations/
1Skills CLI (Vercel)
npx skills add raintree-technology/hig-doctor --skill hig-foundations -a codex2Manually: put the files in place
.agents/skills/hig-foundations/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add raintree-technology/hig-doctor --skill hig-foundations -a cursor2Manually: put the files in place
.cursor/skills/hig-foundations/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install raintree-technology/hig-doctor hig-foundations2Manually: put the files in place
.github/skills/hig-foundations/SKILL.md1Skills CLI (Vercel)
npx skills add raintree-technology/hig-doctor --skill hig-foundations -a gemini-cli2Platform CLI
gemini skills install https://github.com/raintree-technology/hig-doctor --path skills/hig-foundationsManually: put the files in place
.devin/skills/hig-foundations/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add raintree-technology/hig-doctor --skill hig-foundations -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about hig-foundations
How do I install hig-foundations in Claude?
Run npx skills add raintree-technology/hig-doctor --skill hig-foundations -a claude-code. The skill lands in ~/.claude/skills/hig-foundations/SKILL.md.
What does hig-foundations do?
It gives the agent Apple Human Interface Guidelines foundations: color, typography, icons, materials, motion, privacy and accessibility. Answers cite a specific HIG section and include code patterns.
What does the skill rely on?
It reads .claude/apple-design-context.md if your project has one, and cross-references the sibling skills hig-platforms, hig-patterns, hig-components-layout and hig-components-content.
Source text
SKILL.md · MIT
--- name: hig-foundations version: 1.0.0 description: >- Apple Human Interface Guidelines design foundations. Use this skill when the user asks about "HIG color", "Apple typography", "SF Symbols", "dark mode guidelines", "accessible design", "Apple design foundations", "app icon", "layout guidelines", "materials", "motion", "privacy", "right to left", "RTL", "inclusive design", branding, images, spatial layout, or writing style. Also use when the user says "my colors look wrong in dark mode", "what font should I use", "is my app accessible enough", "how do I support Dynamic Type", "what contrast ratio do I need", "how do I pick system colors", or "my icons don't match the system style". Cross-references: hig-platforms for platform-specific guidance, hig-patterns for interaction patterns, hig-components-layout for structural components, hig-components-content for display. --- # Apple HIG: Design Foundations Check for `.claude/apple-design-context.md` before asking questions. Use existing context and only ask for information not already covered. ## Key Principles 1. **Prioritize content over chrome.** Reduce visual clutter. Use system-provided materials and subtle separators rather than heavy borders and backgrounds. 2. **Build in accessibility from the start.** Design for VoiceOver, Dynamic Type, Reduce Motion, Increase Contrast, and Switch Control from day one. Every interactive element needs an accessible label. 3. **Use system colors and materials.** System colors adapt to light/dark mode, increased contrast, and vibrancy. Prefer semantic colors (`label`, `secondaryLabel`, `systemBackground`) over hard-coded values. 4. **Use platform fonts and icons.** SF Pro, SF Compact, SF Mono by default. New York for serif. Follow the type hierarchy at recommended sizes. Use SF Symbols for iconography. 5. **Match platform conventions.** Align look and behavior with system standards. Provide direct, responsive manipulation and clear feedback for every action. 6. **Respect privacy.** Request permissions only when needed, explain why clearly, provide value before asking for data. Design for minimal data collection. 7. **Support internationalization.** Accommodate text expansion, right-to-left scripts, and varying date/number formats. Use Auto Layout for dynamic content sizing. 8. **Use motion purposefully.** Animation should communicate meaning and spatial relationships. Honor Reduce Motion by providing crossfade alternatives. ## Reference Index | Reference | Topic | Key content | |---|---|---| | [accessibility.md](references/accessibility.md) | Accessibility | VoiceOver, Dynamic Type, color contrast, motor accessibility, Switch Control, audio descriptions | | [app-icons.md](references/app-icons.md) | App Icons | Icon grid, platform-specific sizes, single focal point, no transparency | | [branding.md](references/branding.md) | Branding | Integrating brand identity within Apple's design language, subtle branding, custom tints | | [color.md](references/color.md) | Color | System colors, Dynamic Colors, semantic colors, custom palettes, contrast ratios | | [dark-mode.md](references/dark-mode.md) | Dark Mode | Elevated surfaces, semantic colors, adapted palettes, vibrancy, testing in both modes | | [icons.md](references/icons.md) | Icons | Glyph icons, SF Symbols integration, custom icon design, icon weights, optical alignment | | [images.md](references/images.md) | Images | Image resolution, @2x/@3x assets, vector assets, image accessibility | | [immersive-experiences.md](references/immersive-experiences.md) | Immersive Experiences | AR/VR design, spatial immersion, comfort zones, progressive immersion levels | | [inclusion.md](references/inclusion.md) | Inclusion | Diverse representation, non-gendered language, cultural sensitivity, inclusive defaults | | [layout.md](references/layout.md) | Layout | Margins, spacing, alignment, safe areas, adaptive layouts, readable content guides | | [materials.md](references/materials.md) | Materials | Vibrancy, blur, translucency, system materials, material thickness | | [motion.md](references/motion.md) | Motion | Animation curves, transitions, continuity, Reduce Motion support, physics-based motion | | [privacy.md](references/privacy.md) | Privacy | Permission requests, usage descriptions, privacy nutrition labels, minimal data collection | | [right-to-left.md](references/right-to-left.md) | Right-to-Left | RTL layout mirroring, bidirectional text, icons that flip, exceptions | | [sf-symbols.md](references/sf-symbols.md) | SF Symbols | Symbol categories, rendering modes, variable color, custom symbols, weight matching | | [spatial-layout.md](references/spatial-layout.md) | Spatial Layout | visionOS window placement, depth, ergonomic zones, Z-axis design | | [typography.md](references/typography.md) | Typography | SF Pro, Dynamic Type sizes, text styles, custom fonts, font weight hierarchy, line spacing | | [writing.md](references/writing.md) | Writing | UI copy guidelines, tone, capitalization rules, error messages, button labels, conciseness | ## Applying Foundations Together Consider how principles interact: 1. **Color + Dark Mode + Accessibility** -- Custom palettes must work in both modes while maintaining WCAG contrast ratios. Start with system semantic colors. 2. **Typography + Accessibility + Layout** -- Dynamic Type must scale without breaking layouts. Use text styles and Auto Layout for the full range of type sizes. 3. **Icons + Branding + SF Symbols** -- Custom icons should match SF Symbols weight and optical sizing. Brand elements should integrate without overriding system conventions. 4. **Motion + Accessibility + Feedback** -- Every animation must have a Reduce Motion alternative. Motion should reinforce spatial relationships, not decorate. 5. **Privacy + Writing + Onboarding** -- Permission requests need clear, specific usage descriptions. Time them to when the user will understand the benefit. ## Output Format 1. **Cite the specific HIG foundation** with file and section. 2. **Note platform differences** for the user's target platforms. 3. **Provide concrete code patterns** (SwiftUI/UIKit/AppKit). 4. **Explain accessibility impact** (contrast ratios, Dynamic Type scaling, VoiceOver behavior). ## Questions to Ask 1. Which platforms are you targeting? 2. Do you have existing brand guidelines? 3. What accessibility level are you targeting? (WCAG AA, AAA, Apple baseline?) 4. System colors or custom? ## Related Skills - **hig-platforms** -- How foundations apply per platform (e.g., type scale differences on watchOS vs macOS) - **hig-patterns** -- Interaction patterns where foundations like writing and accessibility are critical - **hig-components-layout** -- Structural components implementing layout principles - **hig-components-content** -- Content display using color, typography, and images --- *Built by [Raintree Technology](https://raintree.technology) · [More developer tools](https://raintree.technology)*
© raintree-technology · MIT · raintree-technology/hig-doctor