The best way to install apps from outside Apple’s App Store was only made possible because Riley Testut wanted to play Pokémon on his iPhone.
Testut was still in college when he started building an emulator for playing classic Game Boy games on an iPhone. But when Apple wouldn’t allow the app in its store, he started looking for workarounds. The result was AltStore, which allows iPhone and iPad users to install Testut’s own Delta emulator for old Nintendo games along with any other app that Apple deems off-limits—a process known as sideloading.
AltStore has been downloaded more than 1.5 million times since its launch in 2019, and the service has more than 300,000 monthly active users. Nearly 6,000 of those users contribute to AltStore’s Patreon, which brings in more than $14,500 per month and gives backers early access to new features.
As Apple faces more political pressure to let users install apps from outside the App Store, AltStore is preparing for its biggest updates yet. Users will soon be able to discover new apps to sideload directly through AltStore, so they don’t have to wade through questionable download sites. Optimizations for iPad are also on the way, and Testut recently hired a longtime friend, Shane Gill, to improve AltStore’s documentation and work on developer outreach, allowing Testut to spend more time programming.
The goal, Testut says, is to turn AltStore into a haven for independent apps that clash with Apple’s App Store policies.
“Apps are boring,” he says. “No cool, fun apps are coming out. We want to see more small, but quirky, fun apps in AltStore.”
How AltStore works
AltStore mimics a feature of Apple’s Xcode programming software that lets developers test their own apps on actual iPhones and iPads. That feature, which launched in 2015, was ostensibly aimed at students who want to dabble in app development, but in practice it allows anyone to sideload apps without a $99 per year developer account.
“When Apple announced that, I was like, ‘Oh, so there’s some way to install apps onto iOS just with an Apple ID,'” Testut says. “And from there I expanded that into a full solution.”
To enable sideloading, users must install a companion app called AltServer on a Mac or Windows PC. This program then logs users in with their Apple ID, prepares their account for development, and signs the AltStore app so that it looks like the user created it. AltServer then uses the iTunes sync protocol to send AltStore to the user’s iPhone or iPad.
With AltStore installed, users can add Testut’s Delta emulator or Clip clipboard manager with just a couple of taps, and they can install other apps from outside the App Store using the .ipa file format. (Ad-free versions of major social media apps seem especially popular, as do other classic game emulators.)
Because of the app-signing process and the limits of sideloading through Xcode, AltStore does have some limitations: Users can only install new apps if they’re on the same Wi-Fi network as the Mac or PC running AltServer, and they can only install up to two apps alongside AltStore at the same time. While users can swap out those two apps at any time, AltStore can only sideload up to 10 total apps per week, and each app must be “refreshed” once per week through a connection to AltServer.
The resulting experience can feel a bit rickety, with apps occasionally failing to refresh or getting stuck in the install process, But the payoff can be tremendous. I’ve used AltStore to play classic Nintendo games on the go (with a Razer Kishi controller), make my Pebble Watch usable again (after its app disappeared from the App Store last fall), and even enjoy an ad-free version of Twitter.
Testut doesn’t believe Apple can do much to stop this behavior. While he’s occasionally had to deal with minor roadblocks—such as the time Apple disabled a simple account authentication method he had been relying on—ultimately AltStore is just tapping into the sideloading method that Apple itself has made available to developers.
Blocking AltStore would require Apple to completely rework its tools or change its policies for developers, and may not be worth the trouble amid regulatory pressure on Apple to loosen the App Store’s monopoly on app downloads. (Testut says he’s never been in direct contact with Apple about AltStore; Apple did not respond to a request for comment.)
“They do whatever they can that’s easy, but they’re not going to disrupt their own development flow,” Testut says. “Also, it’s bad PR to be going after an alternative app store right now.”
Building a real store
AltStore has been Testut’s full-time job since 2019, when he launched a Patreon campaign that gives supporters access to beta features. Over time, he’s made AltStore more reliable, launched a Windows version of AltServer, and added the ability to install IPA files from anywhere. He’s also made improvements to the Delta emulator, adding iPad and Apple TV support along with the ability to sync save files across devices.
Testut would love to see web browsers that use their own rendering engines instead of Apple’s WebKit.
Testut says he’s now putting the infrastructure in place to expand AltStore’s offerings. An update this week adds a “Trusted Sources” section, where users can find apps Testut and Gill have vetted themselves.
This is a precursor, Testut says, to an automated security system that makes sure sideloaded apps aren’t up to no good. A sideloaded app, for instance, could try to access a user’s camera, contacts, or microphone, and could even execute malicious code, so Testut wants to build in features that would help minimize the potential damage.
“There’s a lot of risk to sideloading,” Testut says. “Because we’re the tool that people are using, it’s our responsibility to make sure that we’re doing what we can to prevent people from accidentally screwing themselves over.”
Bringing in new apps
As for the kind of apps that AltStore plans to curate, Testut points to UTM, an app for running virtualized versions of other operating systems, such as Windows and Linux, on an iPhone or iPad.
UTM relies on a feature called Just-in-Time (JIT) compilation, which speeds up emulation by generating native code on the fly instead of interpreting it ahead of time. While Apple doesn’t support apps that use JIT—it briefly added and removed the feature in some versions of iOS 14—Testut has figured out how to make it work in AltStore. (The only catch is that apps using JIT must connect to AltServer whenever they launch.)
“You would think that allowing high performance apps would be to Apple’s benefit as they keep making more and more powerful iPads, but the state of (allowed) iPad software has been stagnant,” says UTM’s developer, who goes by the pseudonym Osy. “It’s one of the reasons I worked on UTM in the first place, because I thought it was a pity that such powerful hardware doesn’t have any software to take advantage of it.”
Testut also has other ideas for what might work in AltStore. Emulation of additional game consoles is an obvious candidate. He’d also love to see web browsers that use their own rendering engines instead of Apple’s WebKit, which is required for all third-party browsers in the App Store. (Some open web advocates have argued that this holds back innovation on the platform.) Apps that get banned for opaque or frivolous reasons, like the one that offered an iPod-like interface for music playback, would be welcome as well.
Testut notes that AltStore doesn’t technically allow or disallow apps, since users are free to sideload any IPA file they find on the web. But by setting up curated selection of apps within AltStore itself, his hope is to promote original ideas and experimentation in ways that Apple doesn’t allow.
“Apple takes an approach to the App Store where they only approve what they imagine already, so anything that pushes the boundaries of that, Apple will just reject,” he says. “We need a way for apps that push the boundaries to first exist, and then people will see it exist and want it in the App Store.”
An App Store additive
Given Testut’s zeal for sideloading, you might expect him to support laws forcing Apple to open up its platform. In the United States, a bill called the Open App Markets Act has passed though the Senate’s Judiciary Committee with bipartisan support. It would make sideloading a requirement for major smartphone platforms. The European Council and European Parliament have provisionally agreed on rules that mandate sideloading as well. (Google’s Android operating system supports sideloading already.)
Still, Testut is wary of any law that would make sideloading too easy, as he features that major firms such as Facebook would pull their apps from the App Store and sidestep Apple’s privacy protections as a result. He would prefer a somewhat cumbersome sideloading process to ensure that sideloading remains the domain of more tech-savvy users.
“We don’t like the bills, actually,” he says. “We really think they are too broad, and they have serious ramifications for consumer privacy.”
Of course, that stance has a self-serving aspect to it as well: If sideloading was extremely simple, it might obviate the need for a service like AltStore and render Testut’s years of work obsolete.
But Testut is preparing for that possibility as well. He recognizes that the push for more open smartphone platforms is coming not from quirky indie developers, but from huge corporations such as Epic Games and Spotify, which have much to gain by avoiding Apple’s App Store rules and 30% revenue cut.
Hence the push to establish AltStore as a place for weird, independent apps that bump up against Apple’s rules. If AltStore ultimately has to compete with the likes of Epic Games or Amazon as a source for iPhone apps, it will need to establish a clear identity for itself and encourage like-minded developers to get on board. It’s work that Testut and business partner Shane Gill are now starting in earnest.
“These are apps that aren’t allowed on the App Store currently and wouldn’t exist otherwise,” Gill says. “We’re really expanding the pie, whereas all these other people are trying to divvy it up more.”