Xcode: 12.5
Swift: 5.4
iOS: 14.5
ツール・サブモジュールの準備は↓を叩いてください。
$ make setup$ mv TCASwiftUITemplateApp.xcworkspace/ XXXApp.xcworkspace/
$ rm -rf TCASwiftUITemplateApp.xcworkspaceMakefileのWORKSPACE名を変更
- Before
WORKSPACE=TCASwiftUITemplateApp.xcworkspace
- After
WORKSPACE=XXXApp.xcworkspace
App TARGETS → Signing & Capabilities → Bundle Identifierより
template.Appとなっているので任意の名前に変更してください。
UICatalog TARGETS → Signing & Capabilities → Bundle Identifierより
template.UICatalogとなっているので任意の名前に変更してください。
↓のコマンドを叩くことで Xcode プロジェクトを開くことができます。
swift package generate-xcodeproj を叩く必要はありません。
$ make open新しくライブラリを追加したくなった場合は、 Xcode プロジェクトを開いた際サイドバーに AppPackage/Package.swift のファイルが見えるかと思いますのでそちらを開き、 packages に追加してください。
それ以降は各ライブラリで紹介されている方法に従ってください。
プロジェクトルートにある Cartfile に依存関係を追加し、 carthage update ... コマンドを --use-xcframeworks オプション付きで実行してください。
追加した後、AppPackage/Package.swift の中の targets に .binaryTarget(...) を使用して作成した xcframework をターゲットに追加します。
CocoaPods については未検証のため、検証した際は追記します。
$ make run-format
swiftformatとswift-modに従いフォーマットが適用されます。 PR作成前に実行してください。
ブランチ間で依存関係の変更があった際、conflictを減らすことが目的
Do:
import AppFeature
import Combine
import Foundation
import SwiftUIDon't:
import SwiftUI
import Combine
import Foundation
import AppFeature- kean/Nuke
- firebase/firebase-ios-sdk
- pointfreeco/swift-composable-architecture
- grpc/grpc-swift
- airbnb/lottie-ios
- realm/SwiftLint
- nicklockwood/SwiftFormat
- ra1028/swift-mod
pointfreeco/isowords を参考に作成しています。

Special Thanks! ry-itto