React Native IPA without a Mac
npm install where you like. xcodebuild where it must run.
React Native development works beautifully on Windows and Linux — until iOS release time. Then you need macOS for pod install, xcodebuild, and signing.
nomac runs your RN iOS pipeline on real Apple hardware: JS bundle install, pod install, archive, signing with your App Store Connect key, and TestFlight upload — with live logs the whole way.
From git push to TestFlight.
-
Connect your repo
Sign in with GitHub and point nomac at your Flutter, React Native, or Xcode repository.
git push origin main -
nomac builds on real Macs
Your code builds and signs on Apple hardware with your App Store Connect key — you watch the logs live.
xcodebuild archive · sign -
TestFlight, done
The signed IPA uploads to TestFlight automatically. You get an email; your testers get a build.
→ TestFlight
What you get
Auto-detects your stack
pubspec.yaml → Flutter. package.json + ios/ → React Native. A root .xcodeproj → bare Xcode. Zero config unless you want it.
Live build logs
Stream xcodebuild output in your browser while the build runs — no guessing what broke.
Cached, fast rebuilds
Per-project pub, node_modules, and DerivedData caches. Cached rebuilds target under 15 minutes.
Your keys stay yours
Sign with your own App Store Connect API key — encrypted at rest, decrypted only into an ephemeral keychain per build. nomac never stores p12s.
Artifacts, signed & temporary
IPAs and dSYMs land as signed download links, expiring after 7 days. Nothing lives forever.
Notified, not nagged
Email or Slack when a build finishes or fails. Watch it live if you'd rather.
Questions
Expo already does this — why nomac?
If you're all-in on Expo, EAS is great. nomac is for React Native apps with bare ios/ directories: we build your actual xcworkspace, no ejecting or config plugins required.
How do CocoaPods dependencies work?
nomac runs pod install on the build machine with per-project cache. Your node_modules are keyed by project hash so rebuilds skip cold installs.
Can nomac build from a monorepo?
If the repo root (or build.yaml override) points at the workspace, yes. Detection looks for package.json plus an ios/ workspace.
React Native IPA without a Mac — starting today.
Trusted beta — free builds while we harden the service.