Top
Best
New

Posted by speckx 1 day ago

Building and shipping Mac and iOS apps without opening Xcode(scottwillsey.com)
330 points | 145 commentspage 3
Schiendelman 1 day ago|
I've been using essentially this process (with Claude Code) for about six months. There are a couple of places where I've opened xcode; mostly to update the simulators for new betas of xcode 27, and once to add a target for Apple Watch (and I think something for HealthKit).

Interestingly, since about Opus 4.6, Claude has been able to reason its way into this process on its own. It was clunky until 4.7, and in 4.8 it's managed to find its way around every reason I had to open xcode myself.

schainks 1 day ago||
I just set up my pipeline to do this exact thing for both the Apple and Android ecosystems, dispatching loads to my mac studio or Linux box accordingly. I moved the runners off GitHub because uptime for GitHub actions has been trash lately, and the Apple Silicon runners are pricey.

Claude was great at figuring out what was broken when and either fixing it, or clicking as far as it could until it needed me.

You could say I'm mostly just IRL hands for the AI now.

matthewmueller 1 day ago||
Very cool! Does this assume you're never editing code by hand or can you use editors like VSCode or Cursor as well?
saagarjha 1 day ago||
Making your app buildable from the CLI is not something I do personally to use on my Mac but it is very useful when you're automating your CI. If you have GitHub Actions set up to build your app, so can Claude, assuming you have the right signing setup on your machine.
recsv-heredoc 1 day ago||
Having to have Xcode installed is more than half the problem. It makes Visual Studio look lightweight.
ryandrake 1 day ago||
Xcode does have (or had, haven't checked for a while) a lightweight "command line tools only" installer. Unfortunately, that installer omits a lot of the actual useful command line tools, like the notary and stapler tools. I also recall that the command line tool only installer leaves out things like the metal compiler, too. Not sure what the point of it is.
dylan604 1 day ago|||
> Not sure what the point of it is.

My only familiarity with it is because it's needed by brew. I honestly never looked into exactly what is in the package, but I assumed things like what is installed with -devel packages of yum/apt-get/dnf/etc. Lots of repos have common list of things to install like gcc/make/etc. Again, just guessing, but it's one of the first things I've always run on a new Mac to get it usable for CLI usage.

saagarjha 1 day ago|||
It lets you build basic UNIX-like tools.
gumby 1 day ago||
It’s mostly all the emulators and platform APIs.

I’m not defending Xcode (I hate it), just clarifying.

waynecochran 1 day ago||
The main iPhone app I maintain for work is 100% claude edited now ... I don't touch the code anymore ... I do occasionally look at it. It does a way better job than I could. I do have Xcode open as claude does its thing ... and I occasionally sign and deploy with Xcode. No coding though.
stevenhubertron 1 day ago||
This is how i am developing keptrecipes.com. Been a pleasure this way TBH.
tomaskafka 1 day ago||
I find it hard to believe xcodegen is in a state where it would reliably generate xcodeproj for all edge states (widgets, watchos app, notification extensions …) - it certainly wasn’t when I last tried it for Weathergraph few years ago.

That said, it might be well enough for simpler apps.

tptacek 1 day ago|
What's a not-simple app? I've had Claude generate:

* A Markdown viewer (obviously pretty simple)

* A menu bar Apple TV remote (surprisingly complicated)

* A menu bar and desktop temperature tracker for the silly Tapo temperature trackers I have all over my house (a little complicated because multiple user interfaces, a backing database, scheduling, and multiple local/remote protocol interfaces)

* A graphical CAS calculator frontend to Sage Math with LaTeX math rendering

* An LLMwiki implementation that uses macOS filesystem extensions to reflect a SQLite database into a local filesystem for agents to traverse (basically the new macOS way to do FUSE, fussy enough that the app has to run out of /Applications to work)

* An agent-driven Music.app replacement with AirPlay streaming support managing Apple Music catalogs and tracks

All of these have worked without me ever once touching the xcode UI, except one time to generate Apple Developer certificates, which I then drove exclusively from CLI tools.

These are all pretty modern SwiftUI applications.

pzo 1 day ago||
You can as well make it simpler and use those skills:

https://github.com/software-mansion/argent

or

https://github.com/callstack/agent-device

both callstack and swmansion are mostly react native shops but those should work even in native ios/android as well

isodev 1 day ago|
In addition to the challenged Xcode, just using Swift seems to require a lot more tokens for both coding and dealing with build/platform quirks. Probably not super significant on indie scale but for anything more robust, it builds up quickly.

React Native and Flutter seem to be much more predictable for the bots (and more fun for humans, since they have actual hot reload).

More comments...