iOS/macOS App Developer
A field-tested guide for building iOS/macOS apps with XcodeGen, SwiftUI and SPM, plus Apple code signing, notarization and CI/CD fixes.
Dev & CodingAdvanced★ 1,323⑂ 212AI score 9/10Last updated: Aug 8, 2026
What it does
- Gives a minimal XcodeGen
project.ymltemplate and shows why signing must live in target settings, not globally. - Diagnoses the
Library not loaded: @rpath/...launch crash caused by SPM dynamic frameworks that XcodeGen never embeds, with a one-time Xcode GUI fix. - Maps iOS 17-only APIs to iOS 16-compatible replacements (
.onChange,ContentUnavailableView,AVAudioApplication,@Observable). - Quick-reference commands for generating projects, building for simulator/device, clearing DerivedData and listing devices.
- A 5-step macOS signing + notarization checklist (native and Electron), the exact 5 GitHub Secrets needed, and real CI pitfalls: silent adhoc fallback, EMFILE during signing,
teamIdcredential conflict.
Who it's for
- iOS/macOS engineers who manage Xcode projects declaratively with XcodeGen.
- Developers blocked by free Apple ID vs paid account limitations.
- Teams wiring up Developer ID signing and notarytool in GitHub Actions.
- Electron developers shipping macOS builds outside the App Store.
Examples
- "App runs in the simulator but crashes instantly on device with an @rpath error" → guided to switch the framework to Embed & Sign and build once from the Xcode GUI.
- "CI says signing succeeded but the release is adhoc-signed" → adds
continueOnError: falseplus acodesign --verify --deep --strictpostPackage check. - "Notarization fails with 'Cannot use password credentials, API key credentials...'" → drop
teamIdfrom@electron/notarizesince notarytool infers the team.
· · · Install guide · · ·
Try it now, no install
Paste this into Claude to use the skill without installing anything.
Read the instructions in this file and follow them to help me: https://raw.githubusercontent.com/daymade/claude-code-skills/HEAD/iOS-APP-developer/SKILL.md What I want: (describe your task here)
If Claude can't open the link, open it yourself and paste the contents instead.
↓ If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.
Install in the Claude app (no terminal)
- Download the ZIP with the button below.
- In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
- Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Install in Claude Code
Let Claude do it — paste this into Claude Code
Install the skill I found on Claude Skill Mart. Copy the iOS-APP-developer folder from the GitHub repo daymade/claude-code-skills into my ~/.claude/skills/developing-ios-apps/. When it's done, tell me in one line what this skill can do.
Install with a command instead
git clone https://github.com/daymade/claude-code-skills.git && mkdir -p ~/.claude/skills && cp -r claude-code-skills/iOS-APP-developer ~/.claude/skills/⚠ This is a third-party skill. Check the source repository before installing.
- Open a terminal and clone the repo:
git clone https://github.com/daymade/claude-code-skills.git - Create the skills folder if needed:
mkdir -p ~/.claude/skills - Copy just this skill:
cp -r claude-code-skills/iOS-APP-developer ~/.claude/skills/ - Verify with
ls ~/.claude/skills/iOS-APP-developer— you should seeSKILL.mdand areferences/directory. - Restart Claude Code, then ask something like "my XcodeGen build fails with an @rpath error" to trigger the skill.
- Prerequisites: macOS with Xcode (and
brew install xcodegen); command-line builds and CI signing require a paid Apple Developer account.
View source on GitHub ↗License: MIT