hig-patterns
Apple Human Interface Guidelines interaction and UX patterns.
Best use case
hig-patterns is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Apple Human Interface Guidelines interaction and UX patterns.
Teams using hig-patterns should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/hig-patterns/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How hig-patterns Compares
| Feature / Agent | hig-patterns | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Apple Human Interface Guidelines interaction and UX patterns.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Apple HIG: Interaction Patterns Check for `.claude/apple-design-context.md` before asking questions. Use existing context and only ask for information not already covered. ## Key Principles 1. **Minimize modality.** Use modality only when it is critical to get attention, a task must be completed or abandoned, or saving changes is essential. Prefer non-modal alternatives. 2. **Provide clear feedback.** Every action should produce visible, audible, or haptic response. Activity indicators for indeterminate waits, progress bars for determinate, haptics for physical confirmation. 3. **Support undo over confirmation dialogs.** Destructive actions should be reversible when possible. Undo is almost always better than "Are you sure?" 4. **Launch quickly.** Display a launch screen that transitions seamlessly into the first screen. No splash screens with logos. Restore previous state. 5. **Defer sign-in.** Let users explore before requiring account creation. Support Sign in with Apple and passkeys. 6. **Keep onboarding brief.** Three screens max. Let users skip. Teach through progressive disclosure and contextual hints. 7. **Use progressive disclosure.** Show essentials first, let users drill into details. Don't overwhelm with every option on one screen. 8. **Respect user attention.** Consolidate notifications, minimize interruptions, give users control over alerts. Never use notifications for marketing. ## Reference Index | Reference | Topic | Key content | |---|---|---| | [charting-data.md](references/charting-data.md) | Charting Data | Data visualization patterns, accessible charts, interactive elements | | [collaboration-and-sharing.md](references/collaboration-and-sharing.md) | Collaboration & Sharing | Share sheets, activity views, collaborative editing, SharePlay | | [drag-and-drop.md](references/drag-and-drop.md) | Drag and Drop | Drag sources, drop targets, spring loading, multi-item drag, visual feedback | | [entering-data.md](references/entering-data.md) | Entering Data | Text fields, pickers, steppers, input validation, keyboard types, autofill | | [feedback.md](references/feedback.md) | Feedback | Alerts, action sheets, haptic patterns, sound feedback, visual indicators | | [file-management.md](references/file-management.md) | File Management | Document browser, file providers, iCloud integration, document lifecycle | | [going-full-screen.md](references/going-full-screen.md) | Going Full Screen | Full-screen transitions, immersive content, exiting full screen | | [launching.md](references/launching.md) | Launching | Launch screens, state restoration, cold vs warm launch | | [live-viewing-apps.md](references/live-viewing-apps.md) | Live Viewing Apps | Live content display, real-time updates, Live Activities, Dynamic Island | | [loading.md](references/loading.md) | Loading | Activity indicators, progress views, skeleton screens, lazy loading, placeholders | | [managing-accounts.md](references/managing-accounts.md) | Managing Accounts | Sign in with Apple, passkeys, account creation, credential autofill, account deletion | | [managing-notifications.md](references/managing-notifications.md) | Managing Notifications | Permission requests, grouping, actionable notifications, provisional delivery | | [modality.md](references/modality.md) | Modality | Sheets, alerts, popovers, full-screen modals, when to use each | | [multitasking.md](references/multitasking.md) | Multitasking | iPad Split View, Slide Over, Stage Manager, responsive layout, size class transitions | | [offering-help.md](references/offering-help.md) | Offering Help | Contextual tips, onboarding hints, help menus, support links | | [onboarding.md](references/onboarding.md) | Onboarding | Welcome screens, feature highlights, progressive onboarding, skip options | | [playing-audio.md](references/playing-audio.md) | Playing Audio | Audio sessions, background audio, Now Playing, audio routing, interruptions | | [playing-haptics.md](references/playing-haptics.md) | Playing Haptics | Core Haptics, UIFeedbackGenerator, haptic patterns, custom haptics | | [playing-video.md](references/playing-video.md) | Playing Video | Video player controls, picture-in-picture, AirPlay, full-screen video | | [printing.md](references/printing.md) | Printing | Print dialogs, page setup, AirPrint integration | | [ratings-and-reviews.md](references/ratings-and-reviews.md) | Ratings & Reviews | SKStoreReviewController, timing, frequency limits, in-app feedback | | [searching.md](references/searching.md) | Searching | Search bars, suggestions, scoped search, results display, recents | | [settings.md](references/settings.md) | Settings | In-app vs Settings app, preference organization, toggles, defaults | | [undo-and-redo.md](references/undo-and-redo.md) | Undo and Redo | Shake to undo, undo/redo stack, multi-level undo | | [workouts.md](references/workouts.md) | Workouts | Workout sessions, live metrics, Always On display, summaries, HealthKit | ## Pattern Selection Guide | User Goal | Recommended Pattern | Avoid | |---|---|---| | First app experience | Brief onboarding (max 3 screens) + progressive disclosure | Long tutorials, mandatory sign-up | | Waiting for content | Skeleton screens or progress indicators | Blocking spinners with no context | | Confirming destructive action | Undo support | Excessive "Are you sure?" dialogs | | Collecting user input | Inline validation, smart defaults, autofill | Modal forms for simple inputs | | Requesting permissions | Contextual, just-in-time with explanation | Requesting all permissions at launch | | Providing feedback | Haptics + visual indicator | Silent actions with no confirmation | | Organizing preferences | In-app settings for frequent items | Burying all settings in system Settings app | ## Output Format 1. **Recommended pattern with rationale**, citing the relevant reference file. 2. **Step-by-step implementation** covering each screen or state. 3. **Platform variations** for targeted platforms. 4. **Common pitfalls** that violate HIG for this pattern. ## Questions to Ask 1. Where in the app does this pattern appear? What comes before and after? 2. Which platforms? 3. Designing from scratch or improving an existing flow? 4. Does this involve sensitive actions? (Destructive operations, payments, permissions) ## Related Skills - **hig-foundations** -- Accessibility, color, typography, and privacy principles underlying every pattern - **hig-platforms** -- Platform-specific pattern implementations - **hig-components-layout** -- Structural components (tab bars, sidebars, split views) for navigation patterns - **hig-components-content** -- Content display within patterns (charts, collections, search results) --- *Built by [Raintree Technology](https://raintree.technology) · [More developer tools](https://raintree.technology)* ## When to Use This skill is applicable to execute the workflow or actions described in the overview.
Related Skills
microservices-patterns
Design microservices architectures with service boundaries, event-driven communication, and resilience patterns. Use when building distributed systems, decomposing monoliths, or implementing micros...
MCP Widget Patterns
This skill should be used when the user asks to "design a widget", "what widget pattern should I use", "inline card design", "carousel widget", "fullscreen mode", "picture in picture", "widget layout", "card design for ChatGPT", or needs guidance on specific widget patterns and implementations for OpenAI Apps SDK.
design-patterns
BK-CI 项目设计模式实践指南,涵盖工厂模式、策略模式、观察者模式、装饰器模式、模板方法等在项目中的实际应用。当用户学习设计模式、重构代码、设计可扩展架构或理解项目设计时使用。
architecture-patterns
Padrões de arquitetura de software - Decisões OBJETIVAS sobre design de sistemas
ai-interaction-patterns
AI-specific interaction design patterns covering wayfinding, prompt UX, human-in-the-loop controls, trust & transparency, AI identity, and context management. Based on Shape of AI (shapeof.ai). Use when asking about 'AI UX', 'AI interaction', 'prompt UX', 'AI trust', 'AI disclosure', 'AI avatar', 'AI personality', 'AI memory UX', 'action plan UX', 'stream of thought', 'AI citations', 'AI controls', 'AI wayfinding', 'AI suggestions', 'gallery pattern', 'follow-up pattern', 'draft mode', 'AI variations', 'AI consent', 'AI caveat', 'human-in-the-loop', 'AI transparency', 'AI state', 'prompt design', 'AI onboarding', or 'generative UI'.
refactoring-patterns
Safe refactoring workflow and common patterns. Invoke when extracting methods, renaming, moving code, or addressing code smells.
multi-agent-patterns
Supervisor, swarm, and hierarchical multi-agent architectures with context isolation patterns.
memory-safety-patterns
Implement memory-safe programming with RAII, ownership, smart pointers, and resource management across Rust, C++, and C. Use when writing safe systems code, managing resources, or preventing memory...
llm-app-patterns
Production-ready patterns for building LLM applications. Covers RAG pipelines, agent architectures, prompt IDEs, and LLMOps monitoring. Use when designing AI applications, implementing RAG, building agents, or setting up LLM observability.
dbt-transformation-patterns
Master dbt (data build tool) for analytics engineering with model organization, testing, documentation, and incremental strategies. Use when building data transformations, creating data models, or ...
data-fetching-patterns
Explains data fetching strategies including fetch on render, fetch then render, render as you fetch, and server-side data fetching. Use when implementing data loading, optimizing loading performance, or choosing between client and server data fetching.
airflow-dag-patterns
Build production Apache Airflow DAGs with best practices for operators, sensors, testing, and deployment. Use when creating data pipelines, orchestrating workflows, or scheduling batch jobs.