What problem does it solve?
This skill scaffolds, builds, and packages SwiftPM-based macOS apps without an Xcode project, enabling from-scratch layouts, SwiftPM targets/resources, and an assembly/signature/notarization workflow outside Xcode.
Core Features & Use Cases
- Bootstrap a complete macOS SwiftPM app folder from templates (assets/templates/bootstrap/) and wire project metadata (Package.swift, Sources/MyApp/, version.env).
- Build, package, and run the bootstrapped app without Xcode, including universal binary support via SwiftPM.
- Sign, notarize, and optionally generate Sparkle appcast entries for releases to ease distribution.
- Follow a repeatable release workflow with versioning and GitHub releases using the provided scripts.
Quick Start
Bootstrap a new macOS SwiftPM app by copying assets/templates/bootstrap/ into your repo, then rename MyApp in Package.swift, Sources/MyApp/, and version.env. Customize APP_NAME, BUNDLE_ID, and version numbers as needed.
Build, package, and run the app by copying the scripts from assets/templates/ into your repo (Scripts/), then run swift build and swift test, followed by Scripts/package_app.sh and Scripts/compile_and_run.sh (or Scripts/launch.sh). Optional release steps include Scripts/sign-and-notarize.sh and Scripts/make_appcast.sh, followed by a tagged GitHub release.