Design macOS Interfaces
Use this skill when the target experience is a desktop Apple interface or a Mac-like web/Flutter app.
Workflow
- Determine whether the app is document-based, utility, content browser, creator tool, settings utility, or dashboard.
- Choose the window model: single-window app, document windows, utility panels, settings window, sheets, popovers, or inspectors.
- Place persistent navigation in sidebars or segmented toolbar controls. Keep important commands in the menu bar and toolbar.
- Design with pointer, keyboard, menus, resizable windows, and multi-window behavior in mind.
- Specify default, compact, and expanded window sizes. Avoid bottom-only critical controls because windows can be partly off screen.
- Include accessibility, keyboard shortcuts, menu availability, empty states, and window restoration notes.
macOS Design Rules
- Keep standard menu items unless there is a strong platform reason to remove them.
- Settings windows should be ordinary windows, not translucent panels. Use grouped forms and expected tabs or sections.
- Toolbars should contain frequent commands; menu bar should still expose commands and keyboard shortcuts.
- Sidebars are for navigation and source lists. Inspectors are for details or properties of the current selection.
- Use sheets for document-modal decisions and popovers for lightweight contextual controls.
- Do not rely on touch-sized spacing; macOS can be denser, but targets and focus states still need to be clear.
- For Flutter, use
macos_uicomponents when the project already uses Flutter and wants native macOS conventions.
References
Read references/macos-patterns.md for component mapping and source links.