IPA
iOS IPA BuilderGitHub Actions build tool
GitHub Actions · macOS · Xcode

Build an iOS IPA without a local Mac.

Create clean unsigned IPA packages or App Store/TestFlight-ready signed IPA files directly with GitHub Actions.

Workflow preview
Source repositoryowner/my-ios-app
Project typeAuto detect
Build modeUnsigned IPA
OutputPublic or Private Release

Two build modes

Use the same workflow for sideloading builds or a normal Apple distribution build.

01

Unsigned IPA

Creates a clean Release build with code signing disabled, then packages the app as a standard IPA for signing elsewhere.

02

App Store / TestFlight

Uses your own Apple Distribution certificate and provisioning profile to create a signed IPA. Upload to Apple stays manual.

How it works

The builder is a GitHub workflow, not a desktop app. GitHub starts a macOS runner and performs the build remotely.

STEP 1Select sourceChoose repository, branch or tag.
STEP 2Detect projectXcode, Capacitor, Flutter or React Native.
STEP 3Build on macOSXcode creates the unsigned or signed IPA.
STEP 4Deliver releaseSave the IPA to a public or private GitHub Release.

Supported projects

Auto detection is the default, with manual override available when needed.

Native XcodeCapacitorFlutterReact Native
Simple by design. Standard GitHub-hosted runners only, no Actions artifact storage, and no automatic App Store Connect upload.

Private project?

Add two GitHub secrets once and the builder can work with your private repository.

🔐

SOURCE_TOKEN

Lets the builder read your private project. Public projects do not need this.

📦

OUTPUT_TOKEN

Lets the builder save the finished IPA to your selected GitHub Release.

Add them once in your builder repository under Settings → Secrets and variables → Actions.