ios-swift

Installation
SKILL.md

When to use this skill

Use this skill whenever the user wants to:

  • Create iOS applications using Swift with SwiftUI or UIKit
  • Implement navigation, view controllers, or SwiftUI views and modifiers
  • Use async/await, Combine, or URLSession for networking
  • Configure Xcode project settings, signing, capabilities, or entitlements
  • Persist data with Core Data, SwiftData, or UserDefaults
  • Prepare for App Store submission via TestFlight

How to use this skill

1. SwiftUI View

struct ContentView: View {
    @StateObject private var viewModel = ItemViewModel()

    var body: some View {
        NavigationStack {
            List(viewModel.items) { item in
                NavigationLink(item.name) {
                    DetailView(item: item)
                }
            }
            .navigationTitle("Items")
            .task { await viewModel.loadItems() }
        }
    }
}

2. ViewModel with async/await

@MainActor
class ItemViewModel: ObservableObject {
    @Published var items: [Item] = []

    func loadItems() async {
        let (data, _) = try await URLSession.shared.data(from: url)
        items = try JSONDecoder().decode([Item].self, from: data)
    }
}

3. Navigation (UIKit)

let detailVC = DetailViewController()
detailVC.item = selectedItem
navigationController?.pushViewController(detailVC, animated: true)

4. Xcode Configuration

  • Set Signing & Capabilities: Team, Bundle ID, provisioning profile.
  • Add capabilities (Push Notifications, Background Modes) in the Signing tab.
  • Archive and upload via Product -> Archive -> Distribute App.

Best Practices

  • Perform all UI updates on @MainActor; use [weak self] in closures to avoid retain cycles.
  • Add NSCameraUsageDescription and other privacy keys to Info.plist before requesting permissions.
  • Test on real devices and via TestFlight before App Store submission.
  • Follow Apple Human Interface Guidelines for layout, typography, and navigation patterns.

Resources

Keywords

iOS, Swift, SwiftUI, UIKit, Xcode, async/await, Core Data, TestFlight, App Store

Weekly Installs
56
GitHub Stars
341
First Seen
Jan 24, 2026