/swift-bundler

An Xcodeproj-less tool for creating cross-platform Swift apps.

Primary LanguageSwiftApache License 2.0Apache-2.0

An Xcodeproj-less tool for creating cross-platform Swift apps.

Supporting Swift Bundler ❤️

If you find Swift Bundler useful, please consider supporting me by becoming a sponsor. I spend most of my spare time working on open-source projects, and each sponsorship helps me focus more time on making high quality tools for the community.

Documentation 📚

The documentation is hosted on the Swift Bundler website.

Installation 📦

Install the latest version of Swift Bundler with mint:

mint install stackotter/swift-bundler

If you have previously installed Swift Bundler via the installation script you must delete the /opt/swift-bundler directory (requires sudo).

For more installation methods, see the documentation.

Getting started 🚦

After installing Swift Bundler, package templates make it quick to get started. The following sections walk you through creating and running a simple 'Hello, World!' SwiftUI app.

Creating a SwiftUI app

# Create a new app from the SwiftUI template.
swift bundler create HelloWorld --template SwiftUI
cd HelloWorld

Running the app

# Build and run the app.
swift bundler run

Using Xcode as your IDE

# Creates the files necessary to get xcode to run the package as an app.
# Only needs to be run once unless you delete the `.swiftpm` directory.
swift bundler generate-xcode-support

# Open the package in Xcode
open Package.swift

Learning more

To learn more about Swift Bundler refer to the documentation.

Contributing 🛠

Contributions of all kinds are very welcome! Just make sure to check out the contributing guidelines before getting started. Read through the open issues for contribution ideas.

Apps made with Swift Bundler 👨‍💻

If you have made an app with Swift Bundler, I'd love to hear about it! Just open an issue or submit a PR to add it to the list.

  • Delta Client: A 'Minecraft: Java Edition' compatible Minecraft client written from scratch in Swift
  • ModularMTL: A modular multiplication visualisation made with Swift Bundler, SwiftUI and Metal