Help us improve
Share bugs, ideas, or general feedback.
From Build Swift Apps
Builds or refactors iOS SwiftUI views with guidance on navigation, state ownership, environment injection, async loading, and performance-aware patterns.
npx claudepluginhub xopoko/build-swift-apps --plugin build-swift-appsHow this skill is triggered — by the user, by Claude, or both
Slash command
/build-swift-apps:ios-swiftui-architectThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use for iOS SwiftUI UI structure and component choices. Read the nearest local example before introducing a new pattern.
agents/openai.yamlreferences/app-wiring.mdreferences/async-state.mdreferences/components-index.mdreferences/controls.mdreferences/deeplinks.mdreferences/focus.mdreferences/form.mdreferences/grids.mdreferences/haptics.mdreferences/input-toolbar.mdreferences/lightweight-clients.mdreferences/list.mdreferences/loading-placeholders.mdreferences/macos-settings.mdreferences/matched-transitions.mdreferences/media.mdreferences/menu-bar.mdreferences/navigationstack.mdreferences/overlay.mdApplies SwiftUI patterns for navigation, sheets, async state, and reusable screens. Guides on modern state, composition, and project scaffolding.
Provides best practices and examples for SwiftUI views, components, navigation hierarchies, custom modifiers, responsive layouts with stacks/grids, and state management (@State/@Binding). Use for creating/refactoring iOS UI.
Provides SwiftUI patterns for state management (@State/@Binding/@ObservableObject), view composition, Observable protocol, ViewModifiers, and declarative UI in iOS/macOS apps.
Share bugs, ideas, or general feedback.
Use for iOS SwiftUI UI structure and component choices. Read the nearest local example before introducing a new pattern.
rg "TabView\\(", etc.), then read references/components-index.md.references/app-wiring.md for TabView + NavigationStack + sheets, then expand route/sheet enums as screens appear.references/scroll-reveal.md before hand-rolling gestures.@State, @Binding, @Observable, and @Environment; avoid unnecessary view models.ObservableObject with @StateObject at the owner and @ObservedObject for injection..task/.task(id:) with loading/error states; read references/async-state.md for cancellation/debouncing.@Environment; keep feature-local dependencies as explicit inputs..sheet(item:), avoid if let inside sheet bodies, let sheets call dismiss() internally.| Scenario | Pattern |
|---|---|
| Local UI state | @State |
| Child mutates parent value | @Binding |
| Root-owned iOS 17+ reference model | @State with @Observable |
| Injected iOS 17+ observable | explicit stored property |
| Shared service/config | @Environment(Type.self) |
| iOS 16 legacy model | @StateObject owner, @ObservedObject injected |
Choose ownership first; do not introduce a reference model when value state is enough.
body.AnyView as a composition escape hatch.@EnvironmentObject or a global router.references/components-index.mdreferences/navigationstack.mdreferences/sheets.mdreferences/deeplinks.mdreferences/app-wiring.mdreferences/async-state.mdreferences/previews.mdreferences/performance.mdUse current Apple docs when API availability or platform guidance may have changed. New component refs should be short, actionable, and listed in components-index.md.