すべてのオープンソースパッケージ
アーキテクチャSwift

iOSAppTemplates

iOS 18 向けの21個の SwiftUI アプリテンプレート。いずれもテスト済みの Swift パッケージで、自分の名前でコピーできます

25スター数最新リリース: v3.1.0更新日: 2026年10月15日
対応プラットフォーム:iOS 18macOS 14

ライセンス: MIT

e コマースやファイナンスからメッセージング、旅行まで、21個の SwiftUI アプリテンプレートです。各テンプレートは、SwiftUI と Foundation だけを使う XcodeGen のホストアプリを備えた、独立した Swift パッケージです。そのうち20個はメモリ上のサンプルデータと、Swift Testing suite でカバーされた @MainActor store を持つタブ型のアプリです。CleanArchitectureApp は Domain、Data、Presentation を別々のターゲットに分割し、HTTP レイヤー、プロセス内のサンプルサーバー、オフラインキャッシュを追加し、各レイヤーをテストしています。create-ios-app コマンドはテンプレートをコピーし、その package、モジュール、型、ホストプロジェクト、bundle identifier の名前を変更しますが、テンプレートが既に使っている名前と衝突する名前は拒否します。

機能

  • 21個のテンプレート: 20種類のアプリタイプ(AI アシスタント、予約、CRM、e コマース、ファイナンス、フィットネス、メッセージング、旅行など)と、レイヤー分割された CleanArchitectureApp
  • テスト済みの状態管理: 20個のテンプレートでは状態とアクションが Swift Testing suite を持つ @MainActor store にあり、CleanArchitectureApp は4つのテストターゲットに108個のテストを持っています
  • テンプレートにサードパーティへの依存はなく、アカウント、API キー、ネットワークアクセスなしで動作します
  • create-ios-app はテンプレートの名前を変更し、既にある名前と衝突する名前を拒否します (ScaffoldError.nameConflict)
  • CleanArchitectureApp: Domain、Data、Presentation を別々のターゲットにすることでコンパイラが依存関係のルールを強制します。HTTP レイヤー、プロセス内のサンプルサーバー、オフラインキャッシュも備えます
  • CI は各テンプレートを iOS Simulator 上で個別の job としてテストし、生成したプロジェクトを scaffold してテストし、QuickStart のサンプルをビルドします
  • 各テンプレートのライトモードとダークモードのスクリーンショットを、リポジトリ内のスクリプトでシミュレータ上から取得しています

クイックスタート

swift
1import EcommerceApp
2 
3@main
4enum QuickStartApp {
5 static func main() {
6 EcommerceAppShell.main()
7 }
8}

インストール

Get the templates

sh
1git clone https://github.com/muhittincamdali/iOSAppTemplates.git

create-ios-app

bash
1cd iOSAppTemplates
2swift run create-ios-app list
3swift run create-ios-app new MyShop --template ecommerce --output ~/Developer

TemplateScaffold library (Swift Package Manager)

swift
1dependencies: [
2 .package(url: "https://github.com/muhittincamdali/iOSAppTemplates.git", from: "3.0.0")
3],
4targets: [
5 .executableTarget(name: "YourTool", dependencies: [
6 .product(name: "TemplateScaffold", package: "iOSAppTemplates")
7 ])
8]

スクリーンショット

E コマーステンプレート、Shop タブ、ライト表示
Clean Architecture テンプレート、チームディレクトリ、ライト表示
Clean Architecture テンプレート、チームディレクトリ、ダーク表示
Personal Finance テンプレート、ライト表示
Messaging テンプレート、ダーク表示
Travel Planner テンプレート、ダーク表示

タイムライン

  1. 3つのテンプレートパッケージ(EcommerceApp、FitnessApp、SocialMediaApp)でリポジトリを公開。最初の1ヶ月のコミットの大半はドキュメントで、v2.0.0 は 17 August に公開されました

  2. Templates/ 配下にさらに17個のテンプレートパッケージが追加され、合計20個になりました。v2.1.0 は 26 April にタグ付け

  3. 証跡用スクリプトが削除され、旧 create-ios-app に App Store 用メタデータ生成と対話モードが追加。CI のテンプレート生成の smoke チェックは失敗しており、テンプレートのテストは placeholder のままでした

  4. 3.0.0 として作り直し: テスト済みの20個のテンプレート、書き直した create-ios-app、TemplateScaffold ライブラリ。Swift 6.4 ではビルドできなくなっていたルートパッケージはツールとそのライブラリだけに縮小され、使われていないコード約82,000行が削除されました (PR #22)

  5. 3.1.0: CleanArchitectureApp が21番目のテンプレートとして追加。ios-clean-architecture-template から書き直されたもので、同リポジトリはアーカイブされました (PR #23)

リンク

統合されたリポジトリ

関連記事

記事を読む