Episode #503

Xcode Project Generation with Xcodegen

Series: Modular Project Architecture

14 minutes
Published on September 9, 2021

This video is only available to subscribers. Get access to this video and 584 others.

One thing that can be a pain when splitting modules up into separate projects is maintaining the Xcode projects themselves. Not to mention the fact that as team sizes grow, merging changes in project files gets exponentially more painful. In this episode we will look at using Xcodegen to have a repeatable project generation that you can use to create consistent Xcode projects without much fuss.

Links

Our basic project file

name: DinnerTime
options:
  bundleIdPrefix: com.ficklebits.dinnertime
targets:
  App:
    type: application
    platform: iOS
    deploymentTarget: "14.0"
    sources: [Source]
    scheme:
      testTargets:
        - Tests
    info:
      path: "Source/Info.plist"
      properties:
        UILaunchStoryboardName: 

  Tests:
    type: bundle.unit-test
    platform: iOS
    deploymentTarget: "14.0"
    sources: [Tests]

This episode uses Xcodegen 2.24.0, Xcode 12.5.