mcpField
I
ios-swift

ios-swift

github.com/partme-ai開発71685 回インストール3 週間前に更新
リポジトリ

ios-swift について

iOS開発者向けのSwift開発スキルです。SwiftUI、UIKit、ネットワーク通信、データ永続化、Xcode設定、App Store提出の準備を扱います。

主な機能

  1. 01SwiftUIとUIKitの開発ガイド
  2. 02async/await、Combine、URLSessionによる通信
  3. 03Core Data、SwiftData、UserDefaultsによる永続化
  4. 04Xcodeの署名、機能、権限設定
  5. 05TestFlightとApp Storeへの提出手順

活用シーン

  1. 01iOSアプリの画面とナビゲーションの作成
  2. 02非同期ネットワークデータの読み込み
  3. 03署名、プッシュ通知、バックグラウンド機能の設定
  4. 04TestFlightでのアプリテスト

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/partme-ai/full-stack-skills --skill ios-swift

インストール後、Claude Code で/ios-swiftを入力して読み込まれたか確認します。

同梱ファイルLICENSE.txt

詳細

このスキルを使用するタイミング

次のことをユーザーが希望する場合は、いつでもこのスキルを使用してください。

  • SwiftUI または UIKit を使用して Swift で iOS アプリケーションを作成する
  • ナビゲーション、ビューコントローラー、または SwiftUI のビューやモディファイアを実装する
  • ネットワーキングに async/await、Combine、または URLSession を使用する
  • Xcode プロジェクトの設定、署名、機能、またはエンタイトルメントを構成する
  • Core Data、SwiftData、または UserDefaults でデータを永続化する
  • TestFlight を通じて App Store への提出を準備する

このスキルの使用方法

1. SwiftUI ビュー
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. async/await を使用した ViewModel
@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. ナビゲーション(UIKit)
let detailVC = DetailViewController()
detailVC.item = selectedItem
navigationController?.pushViewController(detailVC, animated: true)
4. Xcode の構成
  • Signing & Capabilities を設定します:チーム、Bundle ID、プロビジョニングプロファイル。
  • Signing タブで機能(Push Notifications、Background Modes)を追加します。
  • Product -> Archive -> Distribute App からアーカイブしてアップロードします。

ベストプラクティス

  • UI の更新はすべて @MainActor 上で行い、クロージャではリテインサイクルを避けるために [weak self] を使用します。
  • 権限を要求する前に、NSCameraUsageDescription などのプライバシーキーを Info.plist に追加します。
  • App Store への提出前に、実機と TestFlight でテストします。
  • レイアウト、タイポグラフィ、ナビゲーションパターンには、Apple Human Interface Guidelines に従います。

リソース

キーワード

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

コメント