Tuist는 Xcode의 프로젝트를 관리할 수 있는 툴입니다. Tuist를 사용하게 되면 앱 개발을 가속화하고 향상시키도록 설계된 툴체인이다
Tuist
TuistGithub
Tuist를 프로젝트에 적용하는 방법은 매우간단하다.
먼저 tuist를 설치 해주고 이때 homebrew나 mise어떤것을 이용해도 상관은 없다. 하지만 tuist공식은 mise를 추천하는 것같다
그 이후 tuist를 이용해 프로젝트를 만들어 준다
tuist를 이용해 프로젝트를 시작하면 적용이 끝난다!
tuist버전 4.8.0 이후는 위처럼 생성했을 때 자동으로 SwiftUI로 파일이 생성이 될 것이다. 이를 UIKit으로 바꾸기 위해서는 몇가지 작업들이 필요하다.
먼저 finder를 열어서 프로젝트 파일에 들어간다음 원래있던 파일을 지우고
SceneDelegate와 AppDelegate를 만들어준다
import UIKit
class SceneDelegate: UIResponder, UIWindowSceneDelegate {
var window: UIWindow?
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
guard let windowScene = (scene as? UIWindowScene) else { return }
window = UIWindow(frame: windowScene.coordinateSpace.bounds)
window?.windowScene = windowScene
let viewController = UIViewController()
viewController.view.backgroundColor = .black
window?.rootViewController = viewController
window?.makeKeyAndVisible()
}
}
import UIKit
@main
class AppDelegate: UIResponder, UIApplicationDelegate {
}
infoPlist파일을 수정하기 위해서는 terminal에 명령어를 작성해 edit을 할 수 있게 해야한다.
tuist edit
edit을 실행시키면 파일들이 보이는데 한번 씩 살표보는 것도 좋은것 같다. tuist설정을 여기서 바꿀수 있는것 같다.
그 후 project라는 파일안에 들어가면 infoPlist가 있는데 그 부분을 수정하면 프로젝트 세팅이 끝나게 된다.
infoPlist: .extendingDefault(
with: [
"UILaunchStoryboardName": "LaunchScreen.storyboard",
"UIApplicationSceneManifest": [
"UIApplicationSupportsMultipleScenes": false,
"UISceneConfigurations": [
"UIWindowSceneSessionRoleApplication": [
[
"UISceneConfigurationName": "Default Configuration",
"UISceneDelegateClassName": "$(PRODUCT_MODULE_NAME).SceneDelegate"
],
]
]
],
]
),
이렇게 하면 UIKit tuist적용이 끝나게 된다. 프로젝트에 있는 Resource라는 파일이 있는데 이 파일안에 있는 필요없는 내용들은 삭제 해도 좋다.