|
| 1 | +--- |
| 2 | +name: macos-app-design |
| 3 | +description: Use when designing or building native macOS applications with SwiftUI or AppKit. Triggers on menu bar structure, keyboard shortcuts, multi-window behavior, Liquid Glass design system, macOS Tahoe/Sequoia, sidebar navigation, toolbar design, app icons, SF Symbols, or making an app feel like a "good Mac citizen." |
| 4 | +--- |
| 5 | + |
| 6 | +# macOS App Design & Development |
| 7 | + |
| 8 | +Guide for designing and implementing native-feeling, "good Mac citizen" apps: fast, elegant, accessible, and deeply integrated with macOS workflows. |
| 9 | + |
| 10 | +## Two Rules That Beat Everything Else |
| 11 | + |
| 12 | +1. **Prefer system components and conventions** over bespoke UI—fastest path to "feels right on Mac" |
| 13 | +2. **If you customize bars, backgrounds, borders, or control chrome**: stop and justify it |
| 14 | + |
| 15 | +## Quick Reference: Mac Citizen Checklist |
| 16 | + |
| 17 | +| Area | Requirement | |
| 18 | +|------|-------------| |
| 19 | +| **Menu Bar** | Standard layout (App/File/Edit/View/Window/Help), ⌘, for Settings | |
| 20 | +| **Keyboard** | Every primary command reachable via keyboard, standard shortcuts work | |
| 21 | +| **Windows** | Resize fluidly, support multiple windows, respect fullscreen/minimize | |
| 22 | +| **Sidebars** | Top-level navigation, scannable items, content extends behind | |
| 23 | +| **Toolbars** | Group by function/frequency, demote secondary to "more" menu | |
| 24 | +| **Text** | Use system text components, standard editing behaviors | |
| 25 | +| **Accessibility** | VoiceOver labels, full keyboard navigation, Reduced Motion support | |
| 26 | + |
| 27 | +## Liquid Glass Quick Rules |
| 28 | + |
| 29 | +**Do:** |
| 30 | +- Use for navigation/controls layer (toolbars, sidebars, bars) |
| 31 | +- Let system components provide built-in behaviors |
| 32 | + |
| 33 | +**Don't:** |
| 34 | +- Apply to content layer (tables, lists, document content) |
| 35 | +- Stack "glass on glass" |
| 36 | + |
| 37 | +## App Archetypes |
| 38 | + |
| 39 | +Identify your app type first: |
| 40 | +- **Document-based**: Files as primary units (open/save/duplicate) |
| 41 | +- **Library + editor**: Sidebar lists items, detail in main area |
| 42 | +- **Utility**: Single window, optional menu bar |
| 43 | +- **Menu-bar app**: Lives in menu bar, minimal UI |
| 44 | +- **Pro tool**: Dense, power-user workflows |
| 45 | + |
| 46 | +## Deliverables Before Building |
| 47 | + |
| 48 | +1. **App archetype** identified |
| 49 | +2. **Information architecture** (sidebar structure, navigation, window model) |
| 50 | +3. **Command map** (menus + keyboard shortcuts for every major feature) |
| 51 | +4. **State + data model** (persistence, undo/redo, concurrency) |
| 52 | +5. **Accessibility plan** (VoiceOver, keyboard, contrast, reduce motion) |
| 53 | + |
| 54 | +## Full Reference |
| 55 | + |
| 56 | +For complete design system details, Icon Composer workflow, SF Symbols guidance, evaluation rubrics, and Definition of Done checklist: |
| 57 | + |
| 58 | +See: [references/macos-design-guide.md](references/macos-design-guide.md) |
| 59 | + |
| 60 | +## Common Mistakes |
| 61 | + |
| 62 | +| Mistake | Fix | |
| 63 | +|---------|-----| |
| 64 | +| Missing menu bar commands | Every feature in menus with keyboard shortcuts | |
| 65 | +| Settings outside App menu | Always ⌘, opening from App menu | |
| 66 | +| Custom text components | Use system text for Mac editing ecosystem | |
| 67 | +| Toolbar overload | Demote secondary actions, group by function | |
| 68 | +| Glass on content | Reserve Liquid Glass for navigation layer only | |
| 69 | +| Breaking standard shortcuts | Never override ⌘C, ⌘V, ⌘Z, etc. | |
| 70 | +| Single-window only | Support multiple windows when it benefits workflows | |
0 commit comments