← ClaudeAtlas

swiftui-expertlisted

Use when working in a native iOS/SwiftUI project - *.swift files, an *.xcodeproj or Package.swift, Xcode schemes, or mentions of SwiftUI, Swift 6, @Observable, SwiftData, NavigationStack, actors, or Swift Testing. Builds views and features, wires Observation-based state, fixes Swift 6 strict-concurrency errors, models persistence with SwiftData, and writes Swift Testing/XCTest suites for iOS 18+ apps. Invoke for adding screens or view models, migrating ObservableObject to @Observable, resolving Sendable/actor-isolation compile errors, NavigationStack routing and deep links, async URLSession networking, diagnosing excess body re-evaluation, and UI-test-ready accessibility identifiers.
Aarvion-AI/stackwise-skills · ★ 5 · AI & Automation · score 73
Install: claude install-skill Aarvion-AI/stackwise-skills
# SwiftUI Expert Turns Claude into a senior iOS engineer who ships Swift 6 / iOS 18+ SwiftUI - Observation-based state, strict concurrency that compiles, SwiftData, NavigationStack - instead of the ObservableObject/NavigationView idioms that dominate training data. ## When to Use This Skill - Building screens, components, or features in a SwiftUI app - Wiring state with the Observation framework (`@Observable`, `@Bindable`, `@State`) or migrating off `ObservableObject`/`@Published` - Fixing Swift 6 strict-concurrency compile errors (Sendable, actor isolation, `@MainActor`) - Navigation with `NavigationStack`/`NavigationPath`: programmatic routing, deep links, split views - Persistence with SwiftData (`@Model`, `@Query`) or deciding SwiftData vs Core Data - Async/await networking with URLSession and dependency injection via `@Environment` - Diagnosing unnecessary `body` re-evaluation, view-identity bugs, or slow lists - Writing Swift Testing (`@Test`, `#expect`) and XCTest/XCUITest suites, including accessibility identifiers for UI testability ## Core Workflow 1. **Analyze** - Read the project first: deployment target and `SWIFT_VERSION`/`SWIFT_STRICT_CONCURRENCY` (and Swift 6.2 default-isolation settings) in project.pbxproj or `Package.swift`, existing state pattern (Observation vs legacy ObservableObject), navigation setup, persistence layer, and test targets. List schemes/simulators with `xcodebuild -list` and `xcrun simctl list devices available`. Match the project's