Crystal Cavern

The story

Shipping an iPhone app without a Mac

The author owns no Mac and no iPad. What the author used to put Crystal Cavern on the App Store with just a Windows PC and an iPhone, and the order it all happened in.

People usually say you need a Mac to make an iPhone app. I don’t have a Mac, or an iPad. All I have is a Windows PC and an iPhone. Even so, Crystal Cavern is on the App Store.

This page covers what I used to get there without a Mac, and the order I did things in. Why I made the game is in Why no sound.

“No Mac, no app” turned out to be wrong

At first I assumed iPhone apps simply couldn’t be made without a Mac. So I asked an AI: “Can I publish an iPhone app if I don’t own a Mac?” The answer was that there are services that rent you a Mac over the internet and build the app for you.

In other words, I didn’t need a Mac on my desk. I only needed a Mac somewhere online to do the building. That told me an iPhone app was possible.

From starting the project to having a finished app took four days.

What I used

Tool and useCost
Windows PCUploading and downloading files, and playing the game in a browser to check itAlready owned
iPhoneInstalling test builds of the app and checking how it really behavesAlready owned
AIWriting the code, explaining each step, telling me what error messages meant—
GitHubAn online place to keep the game’s and the app’s filesFree
CodemagicBuilds the app on a Mac online and sends it to AppleFree for personal use, up to 500 minutes a month
Apple Developer ProgramThe developer membership needed to publish on the App StoreUS$99 a year

Prices were checked in October 2026 and may change. Please check each service’s own page when you sign up.

Filling in the store details and sending the app for review happens on Apple’s “App Store Connect” website. It runs in a browser, so it worked fine from Windows.

The whole process

  1. Make the game. Crystal Cavern started as a game you play in a browser. The AI wrote the code, and I played it in a browser on Windows to check it as it grew
  2. Make the app’s “shell”. This is the part that wraps the game so it runs as an iPhone app. The AI wrote this too. The game inside is the same one as the browser version
  3. Put the files on GitHub. That’s just uploading files in a browser
  4. Get set up with Apple. Join the Apple Developer Program, then create the app’s entry and a key for Codemagic in App Store Connect, so Codemagic can send the app to Apple
  5. Build it with Codemagic. Press a button, and a Mac online builds the app and sends it to Apple
  6. Try it on my own iPhone. Apple’s TestFlight app lets you install an app on your own iPhone before it is released
  7. Fill in App Store Connect and submit. The description, screenshots, a privacy policy page, a declaration of what data the ads use, and so on. Then send it for review
  8. Release it once it passes review.

When something needs fixing, I fix the files, upload them to GitHub again and run another build on Codemagic. The browser version and the app use the very same game file. So to change the game, I put the same file on the site and in the app project, with no change to the app’s own code. The app version updates once it’s rebuilt and passes review.

What I did differently without a Mac

  • No Xcode on my side. Xcode, the program normally used on a Mac to make apps, doesn’t run on Windows. Instead, the app’s design is kept in a short text file, and on every build the Mac online turns that file into a project
  • Test on the real phone. On a Mac you can test on a simulated iPhone on screen (the Simulator). I can’t do that, so I tested on my own iPhone through TestFlight instead
  • Mind the number of builds. Codemagic’s free minutes are capped each month. Gathering fixes together into one build saves those minutes

I didn’t get stuck on the steps because I kept asking the AI

Looking back, there was no step in the publishing process where I really got stuck. Developer sign-up, setting up Codemagic, filling in App Store Connect: whenever I didn’t understand something, I asked the AI right then. So things kept moving smoothly.

Without AI, I think I would have got stuck somewhere and never got past it.

App review

Crystal Cavern has never been rejected in review. I’ve shipped two updates since the first release: 1.1 added support for 17 languages, and 1.2 improved how very large numbers are shown. Both passed straight away.

When it went live

When it passed review and appeared on the App Store, I felt relieved.

If you want to make an app without a Mac

Even if you’ve never programmed, like me, you can make an app with the help of AI. With no Mac, only a Windows PC and an iPhone, I got all the way to the App Store. If you keep at it, you can make one too.

You can play Crystal Cavern right in your browser from this site’s front page.