Generated Xcode project
Use this path when you want Tuist to define and generate your Xcode project. Swift manifests describe projects, targets, dependencies, and schemes, which lets Tuist validate and optimize the complete project graph.
If you want to keep an existing Xcode project or workspace unchanged, use the existing Xcode project path instead.
Adoption steps#
- Choose the starting point that matches your project:
- If you are starting a new project, follow the generated project tutorial to install Tuist, initialize the project, add a dependency, generate the Xcode project, and run the application. You can connect the project to a Tuist account during
tuist initso shared capabilities can use the project's full handle. - If you are replacing an existing checked-in Xcode project, start with the Xcode project migration guide. It creates the Tuist manifests alongside your current project so you can migrate incrementally without creating a sample project.
- If you are starting a new project, follow the generated project tutorial to install Tuist, initialize the project, add a dependency, generate the Xcode project, and run the application. You can connect the project to a Tuist account during
- Learn how the manifest files and dependencies model your project.
- Choose the first optimization to add:
- Follow the module cache guide to replace unchanged modules with shared binaries.
- Follow the Xcode cache guide to share compilation outputs produced by Xcode 26 or later.
- Use selective testing to run only tests affected by a change.
Generated schemes include build and test insights automatically. If you define custom schemes, follow the generated project build insights guide and the generated project test insights instructions.
Verify your setup#
Run tuist generate, build the generated project in Xcode, and launch the application. This confirms that the manifests and dependencies produce a working project.
Then verify the first optimization you selected:
- Module cache: Run
tuist cache, followed bytuist generate. Confirm that generation reuses cached binaries for eligible dependencies. - Xcode compilation cache: Build the same revision in another clean environment and confirm that the later build reports cache hits.
- Selective testing: Run
tuist testsuccessfully, run it again without changing test inputs, and confirm that Tuist skips unaffected test targets.
After the first successful run, move the same commands into continuous integration and configure continuous integration authentication.