Help us improve
Share bugs, ideas, or general feedback.
From build-macos-apps
Implement, refactor, or review modern macOS SwiftUI UI for the new design system and Liquid Glass. Use when adopting Liquid Glass, updating NavigationSplitView, toolbars, search, sheets, and controls, removing custom backgrounds that fight system materials, or building custom glass surfaces with glassEffect, GlassEffectContainer, and glassEffectID.
npx claudepluginhub robinebers/converted-plugins --plugin build-macos-appsHow this skill is triggered — by the user, by Claude, or both
Slash command
/build-macos-apps:liquid-glassThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use this skill to bring a macOS SwiftUI app into the modern macOS design system
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
Use this skill to bring a macOS SwiftUI app into the modern macOS design system with the least custom chrome possible. Start with standard app structure, toolbars, search placement, sheets, and controls, then add custom Liquid Glass only where the app needs a distinctive surface.
Prefer system-provided glass and adaptive materials over bespoke blur, opaque backgrounds, or custom toolbar/sidebar skins. Audit existing UI for extra fills, scrims, and clipping before adding more effects.
NavigationSplitView, TabView, sheet presentation, detail/inspector
layout, toolbar, or custom floating controls.glassEffect surfaces only for app-specific UI that standard
controls do not cover.build-run-debug so the app runs as a foreground .app bundle rather
than as a raw executable.NavigationSplitView for hierarchy-driven macOS layouts. Let the
sidebar use the system Liquid Glass material instead of painting over it.backgroundExtensionEffect so the visual can extend beyond the safe area
without clipping the subject.TabView for persistent top-level sections and
preserve each tab's local navigation state.presentationBackground purely to imitate frosted
material, consider removing it and letting the system's new material render.ToolbarSpacer to communicate grouping:
sharedBackgroundVisibility when an item should stand alone without the
shared glass background, for example a profile/avatar item.badge to toolbar item content for notification or status indicators.tint only to
convey semantic meaning such as a primary action or alert state, not as pure
decoration.scrollEdgeEffectStyle instead of building a custom bar
background.searchable to the NavigationSplitView, not to just one column.searchToolbarBehavior instead of hand-rolling a toolbar button and a
separate field.searchable on the TabView.buttonBorderShape when a button shape needs to be explicit.controlSize to preserve density in inspectors and popovers, and reserve
extra-large sizing for truly prominent actions.step to get automatic tick marks or
provide specific ticks in a ticks closure.neutralValue.Label or standard control initializers for menu items so icons are
consistently placed on the leading edge across platforms.containerConcentric corner configuration instead of guessing a radius.glassEffect for custom glass surfaces. The default shape is capsule-like
and text foregrounds are automatically made vibrant and legible against
changing content underneath.glassEffect when a capsule is not the right fit.tint only when color carries meaning, such as a status or call to
action.glassEffect(... .interactive()) for custom controls or containers with
interactive elements so they scale, bounce, and shimmer like system glass.GlassEffectContainer. This is a
visual correctness rule, not just organization: separate containers cannot
sample each other's glass and can produce inconsistent refraction.glassEffectID with a local @Namespace when matching glass elements
should morph between collapsed and expanded states.searchable is attached at the correct container level for the intended
search scope.ToolbarSpacer, sharedBackgroundVisibility, and
badge instead of one-off hand-built chrome.GlassEffectContainer.glassEffectID with a namespace and stable
identity..app bundle,
not as a raw executable.NavigationSplitView
sidebar, system toolbar, or sheet just because an older version needed
one.GlassEffectContainers.swiftui-patterns when the main question is scene architecture,
sidebar/detail layout, commands, or settings rather than Liquid Glass-specific
treatment.view-refactor when the main issue is file structure, state
ownership, and extracting large views before design changes.appkit-interop when the design requires window, panel, responder-chain,
or AppKit-only control behavior.build-run-debug when you need to launch, verify, or inspect logs
for the app after the visual update.