Using SwiftUI to Build a Mac-assed App in 2026

pfandrade.me Permalink

Paulo Andrade, creator of Secrets and Shopie:

There was a time when Mac apps felt unapologetically Mac. Panic, Omni, Cultured Code, Bare Bones, Sofa. The years just before the iPhone SDK were probably peak Mac-assedness. Then Apple's center of gravity shifted toward the iPhone.

Now we have Electron, Catalyst, and iPadOS apps on the Mac. And even Apple's SwiftUI apps often sand off the very behaviors that made Mac software feel great in the first place.

SwiftUI was announced at WWDC in 2019, almost exactly 7 years ago now. It was meant to be a unified toolkit that would allow you to build apps for Mac, iPhone, iPad, Apple Watch, and any future platforms Apple might release.

Most Apple developers would agree that SwiftUI has failed to deliver on that promise. In fact, Paulo's post is not the first I've read about SwiftUI's various inadequacies. Michael Tsai recently made a list of grievances professional SwiftUI developers have with the framework.

I've been personally interested in getting back into building native Mac apps since at least the COVID lockdowns. But every time I've asked for advice on whether I should learn SwiftUI or AppKit, I've been met with the same answer: learn both.

For somebody who has a full-time job and somewhat of a social life, this is untenable. It's just not possible for me to learn two new UI frameworks just as a cost of entry into the Apple developer ecosystem, no matter how motivated or skilled I might be.

Meanwhile, long-time Mac users complain that nobody builds native apps anymore. To be fair, diehard Mac users have always complained about this, but I believe this time their complaint has legs. I don't see too many native Mac apps being built in 2026. The old stalwarts are still going strong—BBEdit, Things, Transmit, iA Writer, and all the rest—but pretty much every recent app I've used is built on top of Electron.

It's easy to point the finger at Electron and React, or at CXOs that want to hire cheap frontend developers over expensive native developers, or at developers themselves, but I feel Apple is at least partially to blame for the state of the ecosystem today. I don't want to invest my time in an incomplete and buggy UI framework, and I certainly don't want to learn two UI frameworks just to try my hand at building a native app. I suspect most developers feel the same.

Paulo ends his post with:

You can see the result everywhere. SwiftUI is productive, modern, and often delightful, right up until you try to make a really good Mac app. Then suddenly you're fighting the framework for things the Mac solved 20 years ago.

WWDC starts in two hours from the time I'm writing this post. Perhaps today we'll see some announcements that address some of these issues? Perhaps the Apple of 2026 will finally catch up with the Apple of 2006 in terms of software quality?

Whether Apple cleans up their mess or not, Electron exists today and works fine. It lets you get your work out the door and into the hands of your users. It lets you build your business without worrying about what Apple will or will not do. As does React, which hasn't changed significantly since SwiftUI was announced.