spm-swift-package 0.13.2

Command Line Tools for macOS to create project in Swift Package Manager with desirable files.
Documentation

Features

  • 🚀 Multi-platform: iOS • macOS • tvOS • watchOS • visionOS
  • 🛠️ Auto-generated files: Changelog • Readme • Swift Package Index • SwiftLint
  • SwiftLint integration: Generates .swiftlint.yml using the SwiftLintPlugin
  • 🧰 Modern toolchain: Compatible with Xcode 26.0
  • ⚠️ No legacy support: Does not work with older Xcode versions
  • 🖥️ GUI support: Optional graphical interface built with Iced, launched via spm-swift-package ui

Installing

Cargo 🦀

Installing from crates.io (requires Rust/Cargo):

cargo install spm-swift-package

Homebrew 🍻

You can install with Homebrew:

brew tap heroesofcode/taps
brew install heroesofcode/taps/spm-swift-package

Usage

Run CLI

spm-swift-package

Generate (non-interactive)

Generate a package without any prompts, useful for CI/automation:

spm-swift-package generate --name MyLib --platform ios
Flag Short Description Required
--name -n Package name Yes
--platform -p Target platform: iOS, macOS, tvOS, watchOS, visionOS Yes
--test-framework -t Test framework: xctest (default), swift-testing No
--files -f Optional files (repeatable): changelog, readme, spi, swiftlint No
--open-xcode Open the package in Xcode after generation No

Example with all options:

spm-swift-package generate \
  --name MyLib \
  --platform ios \
  --test-framework swift-testing \
  --files changelog \
  --files readme \
  --open-xcode

Run UI

spm-swift-package ui

After generating the Package, it will automatically open in Xcode

And from here you can continue working on your SPM project 🚀 🙂 👨‍💻 👩‍💻

Contributing

To contribute, just fork this project and then open a pull request, feel free to contribute, bring ideas and raise any problem in the issue tab.

License

spm-swift-package is released under the MIT license. See LICENSE for details.