Set Up swift-format in Xcode 16

Swift Format configuration file setup in Xcode project

Swift Format is made by Apple. If your Xcode Version is latest version (after Xcode 16), you don’t need to install it. Toolchain contains swift format.

xcrun --find swift-format
///Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-format

https://github.com/swiftlang/swift-format?tab=readme-ov-file#configuring-the-command-line-tool

Step 1. Create swift-format.json

swift-format dump-configuration > swift-format.json
//It will show default settings for formatting and listing

Copied default settings and create a file like swift-format.json in your project root directory.

SampleProject/
├── 📱 SampleProject.xcworkspace
├── 🔧 SampleProject.xcodeproj
├── swift-format.json # Swift Format
├── 📦 Main App & Server
│ ├── SampleProject/ # iOS
│ ├── SampleProjectTests/
│ └── SampleProjectServer/ # Server
├── 🧩 Modules (Core Libraries)
├── 📦 Dependencies
│ └── Packages/ # SPM packages
└── 📄 Config Files
├── SampleProject.xcconfig
└── GoogleService-Info.plist

Step 2. Add Build Script

Xcode Build Phases menu with New Run Script Phase selected
echo "🐥 Formatting"
swift-format format --configuration swift-format.json --ignore-unparsable-files -i -p -r ${PROJECT_DIR}
echo "🐥 Linting"
swift-format lint --configuration swift-format.json --ignore-unparsable-files -p -r ${PROJECT_DIR}

Step 3. Build Project

Xcode diff showing Swift code reformatted by swift-format

Okay It works

Comments

Leave a Reply

Discover more from Shawn

Subscribe now to keep reading and get access to the full archive.

Continue reading