Skip to main content
Tuist uses Swift-based manifest files to describe your projects, workspaces, and configuration. This guide explains each manifest type and how to use them effectively.

Manifest Types

Tuist supports three main manifest files:

Project.swift

Defines a single Xcode project with targets, schemes, and settings

Workspace.swift

Groups multiple projects into an Xcode workspace

Tuist.swift

Global configuration and shared settings (formerly Config.swift)

Project.swift

The Project.swift manifest defines an Xcode project and its targets.

Basic Structure

Key Components

Targets define buildable components:
Product types:
  • .app - Application
  • .framework - Dynamic framework
  • .staticFramework - Static framework
  • .staticLibrary - Static library
  • .unitTests - Unit test bundle
  • .uiTests - UI test bundle
  • .appExtension - App extension
  • .watch2App - watchOS app

Advanced Features

Add custom build phases:
Wrap non-Xcode build systems (KMP, Rust, etc.):
Generate code for resources:
Access generated code:

Workspace.swift

The Workspace.swift manifest groups multiple projects into an Xcode workspace.
Use Workspace.swift when you need to:
  • Group multiple independent projects
  • Share schemes across projects
  • Organize a large codebase into modules
  • Include documentation or non-project files
If you only have one Project.swift, Tuist automatically generates a workspace - you don’t need Workspace.swift

Tuist.swift (Config)

The Tuist.swift manifest (formerly Config.swift) provides global configuration that applies to all projects in your workspace.

Configuration Options

Control how projects are generated:

Project Helpers

Create reusable manifest helpers in Tuist/ProjectDescriptionHelpers/:

Best Practices

Split large apps into focused projects:
Leverage Swift’s type system:
Use environment variables for sensitive data:
.env

Next Steps

Generated Projects

Learn how manifests become Xcode projects

Workspaces

Organize multi-project workspaces

Architecture

Understand Tuist’s architecture

API Reference

Complete manifest API documentation