GitHub - EvanBacon/create-xcode: Create Xcode projects from the command line
Create Xcode projects from the command line. Emulates Xcode's new project flow for CLI and agent use — no GUI required.
Generates the (currently) 178 project variations from Xcode, covering iOS, macOS, tvOS, watchOS, visionOS, and multiplatform. Generated projects compile with xcodebuild out of the box.
Usage
Interactive
Walks you through platform, template, name, organization, storage, and testing options — same choices as Xcode's new project dialog.
Non-interactive (for agents)
# iOS SwiftUI app bun create xcode MyApp --org com.example -y # macOS app with SwiftData bun create xcode MyApp --platform macos --org com.example --storage swiftdata -y # Multiplatform app bun create xcode MyApp -p multiplatform --org com.example -y
The -y / --non-interactive flag skips all prompts and uses sensible defaults. Also activates automatically when stdin is not a TTY (piped commands, CI, agents).
List available templates
# All templates bun create xcode --list # Filter by platform bun create xcode --list --platform ios
Options
ARGUMENTS
name Project name (prompted if omitted)
OPTIONS
-p, --platform <platform> ios, macos, tvos, watchos, visionos,
multiplatform (default: ios)
-t, --template <id> Template identifier or short name (default: app)
--org <identifier> Organization identifier (e.g. com.example)
--org-name <name> Organization name
--storage <type> none, swiftdata, coredata (default: none)
--testing <type> none, xctest, swift-testing (default: none)
-o, --output <dir> Output directory (default: cwd)
-y, --non-interactive Skip all prompts, use defaults
-l, --list List available templates
-v, --verbose Verbose output
-h, --help Show help
Template coverage
| Platform | Templates |
|---|---|
| iOS | 65 |
| macOS | 48 |
| visionOS | 30 |
| tvOS | 11 |
| watchOS | 11 |
| Multiplatform | 10 |
| DriverKit | 3 |
Categories include Application, Application Extension, Framework & Library, Test, and Other.