The tools and architecture behind our 33 apps for iPhone, iPad and Apple Watch: AI to explore and build, Apple’s tools to test and ship, and a human in the loop at every key step.
Ideate
Build
Test
Ship
Enjoy
Swift, web & Python
Human-in-the-Loop
Process flow
Follow an idea to the App Store, and back
Five stages, with feedback loops in every one. Start with the simple view, or switch to the detailed one: tap any step or loop to see the tools, the people and agents involved, and what it produces. Ideas start as a single ball and build up to 10; tap one to follow it. Zoom in or out with the slider. The gold diamonds are the human-in-the-loop checkpoints.
01
Ideate
Ideas from play, players and contributors, explored with ChatGPT and Grok.
Idea approval
02
Build
AI agents help write the Swift and web code in Xcode and VS Code.
Code review
03
Test
Simulators, our own devices and TestFlight beta testers.
Go / no-go
04
Ship
App Store Connect, App Review and release.
05
Enjoy
Players play, leave reviews and send feedback.
Feedback loop
Feedback loop: what players tell us sparks the next idea, and the cycle starts again. The gold tags are human-in-the-loop checkpoints.
Following: gold ballIdeas flowing: 1 / 10Swipe to explore →
01 Ideate02 Build03 Test04 Ship05 Enjoy
Ideas flowing
01 Ideate
Spark an idea
Ideas come from play, player feedback and our community contributors. We explore them in conversation with ChatGPT and Grok, and capture notes with Apple Intelligence.
Tools
ChatGPT chat mode
Grok
Apple Intelligence
Who
Kristen (community contributor)
Alice (community contributor)
Mary (community contributor)
Paul and Sophie
Output
A one-line idea worth exploring.
02 Ideate
HITL: Idea approval
Paul and Sophie decide which ideas go further. Nothing moves on until a human says yes.
Tools
A human decision
Who
Paul and Sophie
Output
Keep, park, or kill kindly.
03 Ideate
Engineer the prompt
The idea becomes a clear brief: what we’re making, who it’s for, the constraints and how we’ll know it works, refined across various GPT and Grok models.
Tools
Prompt engineering
Various GPT and Grok models
Who
Paul and Sophie
Output
A clear, reusable brief.
04 Feedback loop · Ideate
Ideate loop: refine the prompt
We try a prompt, look at what comes back, and refine the brief until the output is right, before any building starts.
Tools
Prompt engineering
ChatGPT chat mode
Grok
Various GPT and Grok models
Who
Paul and Sophie
Output
A sharper brief.
05 Build
Plan & build with agents
ChatGPT work mode and our Grok Bot agents work through the brief step by step: Onyx on features and fixes, Opal on icons and screens, Topaz on copy.
Tools
ChatGPT work mode
Grok Bot
Various GPT and Grok models
Who
OnyxEngineering LeadOpalDesign LeadTopazMarketing Lead
Output
Features, screens and copy, ready for review.
06 Build
Code, build & version
Apps are written in Swift; web experiences, including this site, in JavaScript, HTML and CSS; Python automates the tooling. Xcode compiles and signs each build, and every change goes to GitHub.
Tools
Swift
JavaScript
HTML
CSS
Python
VS Code
Xcode
GitHub
Who
OnyxEngineering LeadPaul
Output
A signed build, with every change in GitHub.
07 Build
Wire in frameworks & services
Apple frameworks such as CloudKit for iCloud data and StoreKit for in-app purchases, three.js for 3D on the web, and Google AdMob for ads in free apps.
Tools
CloudKit
StoreKit
three.js
Google AdMob
Who
OnyxEngineering Lead
Output
Data, purchases, 3D and ads, wired in.
08 Build
HITL: Code & build review
A human reviews the code and plays the build. Approved builds fork into parallel testing; anything else goes back for rework.
Tools
GitHub
Xcode
Who
Paul
Output
Approved for testing, or sent back for rework.
09 Feedback loop · Build
Build loop: review → rework
If a review finds problems, the work goes back to the agents and into code for another pass, then it’s reviewed again.
Tools
ChatGPT work mode
Xcode
GitHub
Who
OnyxEngineering LeadPaul
Output
Cleaner code, reviewed again.
10 Test
Simulate (in parallel)
In parallel with alpha and beta testing, builds run in iOS device simulators across different iPhone and iPad screen sizes, catching layout and logic issues early.
Tools
iOS device simulators
Xcode
Who
JasperQuality Assurance Lead
Output
Layout and logic issues caught early.
11 Test
Alpha on our own devices
At the same time as the simulator runs, alpha builds go onto our own test devices to check real-world feel, performance and hardware features.
Tools
Alpha & beta test devices
Who
JasperQuality Assurance Lead
Output
Real-world feel and performance checked.
12 Test
Beta with TestFlight
Xcode uploads the build to App Store Connect and TestFlight delivers it to beta testers’ devices, including our community contributors.
Tools
TestFlight
App Store Connect
Alpha & beta test devices
Who
Kristen (community contributor)
Alice (community contributor)
Mary (community contributor)
Output
Tester feedback for the final polish.
13 Feedback loop · Test
Test loop: simulator issues → fix
Layout or logic issues found in the simulators go straight back to Build to be fixed, then the build runs again.
Tools
iOS device simulators
Xcode
GitHub
Who
JasperQuality Assurance LeadOnyxEngineering Lead
Output
A fixed build, run again.
14 Feedback loop · Test
Test loop: device and tester issues → fix
Issues found on alpha devices or reported by TestFlight testers go back to Build, and a new build goes out for another round.
Tools
Alpha & beta test devices
TestFlight
GitHub
Who
JasperQuality Assurance Lead
Kristen (community contributor)
Alice (community contributor)
Mary (community contributor)
Output
A new build for testers.
15 Ship
HITL: Release go/no-go
The parallel test branches meet here. When simulator, alpha and beta testing all check out, a human decides: only a human can press go on a release.
Tools
A human decision
Who
Paul and Sophie
Output
Go, or back for another pass.
16 Ship
Ship with App Store Connect
The store listing, screenshots and creative are set up in App Store Connect and the build is submitted for App Review. Once approved, it’s released on the App Store.
Tools
App Store Connect
StoreKit
Google AdMob
Who
TopazMarketing LeadOpalDesign Lead
Output
Released on the App Store.
17 Feedback loop · Ship
Ship loop: App Review feedback → fix
If App Review asks for changes, we fix what’s needed, upload a new build and resubmit, through the go/no-go gate again.
Tools
App Store Connect
Xcode
Who
Paul
Output
Approved for release.
18 Ship
Pilot new features with feature toggles
New features can ship switched off inside a live app. We turn them on for a small group or our testers first, measure how they go, then switch them on progressively, or roll them back and send them back to testing, without a new release.
Tools
Feature toggles
App Store Connect
Google AdMob
Who
JasperQuality Assurance Lead
Kristen (community contributor)
Alice (community contributor)
Mary (community contributor)
Paul and Sophie
Output
A feature switched on for everyone, or rolled back.
19 Enjoy
On the App Store
Players find and download our apps on the App Store: 33 apps for iPhone, iPad and Apple Watch, with 21k+ downloads so far.
Tools
StoreKit
Who
Players
Output
Downloads.
20 Enjoy
Players enjoy the apps
People use and play our apps and games. Free apps may show ads from Google AdMob, any purchases go through Apple with StoreKit, and features piloted with feature toggles reach players here.
Tools
StoreKit
Google AdMob
Feature toggles
Who
Players
Output
Fun, usefulness and feedback.
21 Enjoy
Players give feedback
Feedback arrives as App Store reviews, support requests through our Support page, and usage insights from App Store Connect and AdMob.
Tools
App Store Connect
Google AdMob
Who
PlayersPaul and Sophie
Output
What to fix, improve or make next.
22 Feedback loop · Enjoy
The big loop: feedback → next idea
Everything we learn from players flows back to Ideate, shaping fixes, new features and the next app. Feedback also tells feature toggles what to switch on next.
Tools
App Store Connect
Google AdMob
TestFlight
Who
Paul and Sophie
Output
The next idea.
Spark an idea (Ideate): Ideas come from play, player feedback and our community contributors. We explore them in conversation with ChatGPT and Grok, and capture notes with Apple Intelligence. Output: A one-line idea worth exploring.
HITL: Idea approval (Ideate): Paul and Sophie decide which ideas go further. Nothing moves on until a human says yes. Output: Keep, park, or kill kindly.
Engineer the prompt (Ideate): The idea becomes a clear brief: what we’re making, who it’s for, the constraints and how we’ll know it works, refined across various GPT and Grok models. Output: A clear, reusable brief.
Ideate loop: refine the prompt (Ideate): We try a prompt, look at what comes back, and refine the brief until the output is right, before any building starts. Output: A sharper brief.
Plan & build with agents (Build): ChatGPT work mode and our Grok Bot agents work through the brief step by step: Onyx on features and fixes, Opal on icons and screens, Topaz on copy. Output: Features, screens and copy, ready for review.
Code, build & version (Build): Apps are written in Swift; web experiences, including this site, in JavaScript, HTML and CSS; Python automates the tooling. Xcode compiles and signs each build, and every change goes to GitHub. Output: A signed build, with every change in GitHub.
Wire in frameworks & services (Build): Apple frameworks such as CloudKit for iCloud data and StoreKit for in-app purchases, three.js for 3D on the web, and Google AdMob for ads in free apps. Output: Data, purchases, 3D and ads, wired in.
HITL: Code & build review (Build): A human reviews the code and plays the build. Approved builds fork into parallel testing; anything else goes back for rework. Output: Approved for testing, or sent back for rework.
Build loop: review → rework (Build): If a review finds problems, the work goes back to the agents and into code for another pass, then it’s reviewed again. Output: Cleaner code, reviewed again.
Simulate (in parallel) (Test): In parallel with alpha and beta testing, builds run in iOS device simulators across different iPhone and iPad screen sizes, catching layout and logic issues early. Output: Layout and logic issues caught early.
Alpha on our own devices (Test): At the same time as the simulator runs, alpha builds go onto our own test devices to check real-world feel, performance and hardware features. Output: Real-world feel and performance checked.
Beta with TestFlight (Test): Xcode uploads the build to App Store Connect and TestFlight delivers it to beta testers’ devices, including our community contributors. Output: Tester feedback for the final polish.
Test loop: simulator issues → fix (Test): Layout or logic issues found in the simulators go straight back to Build to be fixed, then the build runs again. Output: A fixed build, run again.
Test loop: device and tester issues → fix (Test): Issues found on alpha devices or reported by TestFlight testers go back to Build, and a new build goes out for another round. Output: A new build for testers.
HITL: Release go/no-go (Ship): The parallel test branches meet here. When simulator, alpha and beta testing all check out, a human decides: only a human can press go on a release. Output: Go, or back for another pass.
Ship with App Store Connect (Ship): The store listing, screenshots and creative are set up in App Store Connect and the build is submitted for App Review. Once approved, it’s released on the App Store. Output: Released on the App Store.
Ship loop: App Review feedback → fix (Ship): If App Review asks for changes, we fix what’s needed, upload a new build and resubmit, through the go/no-go gate again. Output: Approved for release.
Pilot new features with feature toggles (Ship): New features can ship switched off inside a live app. We turn them on for a small group or our testers first, measure how they go, then switch them on progressively, or roll them back and send them back to testing, without a new release. Output: A feature switched on for everyone, or rolled back.
On the App Store (Enjoy): Players find and download our apps on the App Store: 33 apps for iPhone, iPad and Apple Watch, with 21k+ downloads so far. Output: Downloads.
Players enjoy the apps (Enjoy): People use and play our apps and games. Free apps may show ads from Google AdMob, any purchases go through Apple with StoreKit, and features piloted with feature toggles reach players here. Output: Fun, usefulness and feedback.
Players give feedback (Enjoy): Feedback arrives as App Store reviews, support requests through our Support page, and usage insights from App Store Connect and AdMob. Output: What to fix, improve or make next.
The big loop: feedback → next idea (Enjoy): Everything we learn from players flows back to Ideate, shaping fixes, new features and the next app. Feedback also tells feature toggles what to switch on next. Output: The next idea.
Ideas flow as coloured balls: one to start, a second after a full cycle, a third half a cycle later, then one more every quarter cycle, up to 10. They slow down in each step and most at the human-in-the-loop gates.
Route 1 follows the main path, through the simulator.
Route 2 follows the device path: alpha and beta with TestFlight.
Route 3 follows the every feedback loop.
Route 4 follows the feature toggle pilot.
Architecture
Five layers, many loops
Every app moves left to right through the same stack, then what we learn loops back to the start.
Paul and Sophie steerset direction, review the work and approve every hand-off
HITL
01 Ideate
Ideation & prompting
Prompt engineering
ChatGPT chat mode
Grok
Apple Intelligence
02 Build
Agents, code & source control
ChatGPT work mode
Grok Bot
Various GPT and Grok models
VS Code
Xcode
GitHub
OnyxEngineering Lead
TopazMarketing Lead
OpalDesign Lead
Code & frameworks
Swift
JavaScript
HTML
CSS
Python
three.js
CloudKit
StoreKit
Google AdMob
03 Test
Simulators, devices & TestFlight
iOS device simulators
Alpha & beta test devices
TestFlight
JasperQuality Assurance Lead
Kristen (community contributor)
Alice (community contributor)
Mary (community contributor)
04 Ship
App Store Connect & release
App Store Connect
Feature toggles
Live in the apps
StoreKit
Google AdMob
05 Enjoy
Players, feedback & insights
The App Store
Players
Reviews
Support requests
Usage & AdMob insights
Various GPT and Grok modelspower the AI tools in every layer
Feedback loop
Feedback loops run inside every layer. The big one carries player reviews, support requests, App Store Connect and AdMob insights and TestFlight feedback back into the next idea.
Sapphire Studios architecture: Ideate, Build, Test, Ship and Enjoy, with feedback loops back to Ideate.
Architecture overview. Paul and Sophie steer the whole pipeline and approve every hand-off. Layer 1, Ideate: prompt engineering, ChatGPT chat mode, Grok and Apple Intelligence. Layer 2, Build: ChatGPT work mode, Grok Bot with the AI agents Onyx, Topaz and Opal, various GPT and Grok models, VS Code, Xcode and GitHub, with code in Swift, JavaScript, HTML, CSS and Python, and the frameworks and services three.js, CloudKit, StoreKit and Google AdMob. Layer 3, Test: iOS device simulators running in parallel with alpha and beta testing on test devices and TestFlight, with Jasper and community contributors Kristen, Alice and Mary. Layer 4, Ship: App Store Connect and feature toggles, with StoreKit purchases and Google AdMob ads live in the apps. Layer 5, Enjoy: the App Store, where players download, use and play our apps and give feedback through reviews, support requests and usage and AdMob insights. Various GPT and Grok models power the AI tools across every layer. Feedback loops run within every layer, and a big loop carries player feedback, App Store Connect and AdMob insights and TestFlight feedback back to the next idea.
Languages & frameworks
What it’s built with
Five languages, three frameworks and libraries, and one ads service, each matched to where it runs.
Apps for iPhone, iPad and Apple Watch
Language
Swift
Apple frameworks
CloudKit
StoreKit
Services
Google AdMob
In-app purchases go through StoreKit and are processed by Apple. Free apps may show ads from Google AdMob.
Web experiences & this site
Languages
JavaScript
HTML
CSS
Library
three.js
Hosting
GitHub
Interactive pages and 3D in the browser, plus this website, served by GitHub Pages.
Tooling & automation
Language
Python
Runs alongside
Xcode
App Store Connect
Scripts that build this site and automate App Store Connect work.
The pipeline
Step by step, idea to release
What happens at each step, and the tools that do the work.
01
Step 1: Spark an idea
Ideas come from play, player feedback and our community contributors. We explore them in conversation with ChatGPT and Grok, and capture and tidy notes with Apple Intelligence.
ChatGPT chat mode
Grok
Apple Intelligence
HITLIdea approval Paul and Sophie decide which ideas go further.
02
Step 2: Engineer the prompt
The idea becomes a clear brief: what we’re making, who it’s for, the constraints and how we’ll know it works. Good prompts are reused and refined across various GPT and Grok models.
Prompt engineering
Various GPT and Grok models
03
Step 3: Plan & build with agents
ChatGPT work mode and our Grok Bot agents take the brief and work through it step by step: Onyx on features and fixes, Opal on icons and screens, Topaz on copy.
ChatGPT work mode
Grok Bot
OnyxEngineering LeadOpalDesign LeadTopazMarketing Lead
04
Step 4: Code, build & version
Apps are written in Swift; web experiences, including this site, in JavaScript, HTML and CSS; and Python scripts automate the tooling. Code is edited in VS Code and Xcode. Xcode compiles and signs each build, and every change is committed to GitHub so it can be reviewed and rolled back.
Swift
JavaScript
HTML
CSS
Python
VS Code
Xcode
GitHub
HITLCode & build review A human reviews the code and plays the build before testing.
05
Step 5: Wire in frameworks & services
Apple frameworks such as CloudKit for iCloud data and StoreKit for in-app purchases, three.js for 3D on the web, and Google AdMob for ads in free apps.
CloudKit
StoreKit
three.js
Google AdMob
06
Step 6: Simulate
In parallel with alpha and beta testing, builds run in iOS device simulators across different iPhone and iPad screen sizes, catching layout and logic issues early. Issues go straight back to Build.
iOS device simulators
Xcode
JasperQuality Assurance Lead
07
Step 7: Alpha on our own devices
At the same time as the simulator runs, alpha builds go onto our own test devices to check real-world feel, performance and hardware features.
Alpha & beta test devices
JasperQuality Assurance Lead
08
Step 8: Beta with TestFlight
Xcode uploads the build to App Store Connect and TestFlight delivers it to beta testers’ devices, including our community contributors Kristen, Alice and Mary. Their feedback shapes the final polish, and any issues loop back to Build.
TestFlight
App Store Connect
Alpha & beta test devices
09
Step 9: Ship with App Store Connect
The store listing, screenshots and creative are set up in App Store Connect, the build is submitted for App Review (if it asks for changes, we fix and resubmit), and once approved it’s released on the App Store.
App Store Connect
TopazMarketing LeadOpalDesign Lead
HITLRelease go/no-go When simulator, alpha and beta testing all check out, only a human can press go on a release.
10
Step 10: Pilot with feature toggles
New features can ship switched off inside a live app. We turn them on for a small group or our testers first, measure how they go, then switch them on progressively, or roll them back without a new release.
Feature toggles
App Store Connect
Google AdMob
JasperQuality Assurance Lead
11
Step 11: Enjoy, learn & loop back
Players download, use and play our apps, and tell us what they think through App Store reviews and our Support page. App Store Connect analytics, AdMob reports and tester feedback show what’s working, and it all feeds straight into the next idea.
App Store Connect
Google AdMob
TestFlight
The toolchain
What each tool does
24 tools, languages and frameworks, each with one clear job.
01 Ideate
Prompt engineering
Turning a rough idea into a clear, reusable brief, with goals, audience, constraints and checks, so AI tools give focused, consistent results.
ChatGPT chat mode
Conversational brainstorming, research and problem-solving, from first concepts to tricky bugs.
Grok
A second conversational partner for ideas, research and fresh perspectives on a problem.
Apple Intelligence
Apple’s built-in tools on our own devices for capturing, summarising and polishing notes and text.
02 Build
ChatGPT work mode
Agent mode that takes a brief and works through multi-step tasks, then reports back for review.
Grok Bot
Home of our AI agents, Onyx, Topaz, Opal and Jasper, who carry out engineering, marketing, design and QA tasks.
Various GPT and Grok models
Different models for different jobs, chosen per task, from quick drafts to deeper reasoning.
VS Code
A lightweight editor for code, scripts, web pages and config.
Xcode
Apple’s developer tool: builds, signs and archives our apps, runs the simulators and uploads builds.
GitHub
Source control for every change: versioned, reviewed and backed up. It also hosts this website.
03 Test
iOS device simulators
Run each build in Xcode on virtual iPhones and iPads of different sizes before it touches a real device.
Alpha & beta test devices
Real hardware for testing: alpha builds on our own devices first, then beta builds on testers’ devices.
TestFlight
Apple’s beta service: installs pre-release builds on testers’ devices and collects their feedback.
04 Ship
App Store Connect
Where each app is managed: builds, store listing, screenshots, pricing, App Review, release and analytics.
Feature toggles
Switches that let a new feature ship turned off in a live app, be piloted with a small group, then be turned on gradually or rolled back without a new release.
+ Languages, frameworks & services
Swift
Apple’s programming language, used for our apps on iPhone, iPad and Apple Watch.
JavaScript
Brings our web experiences, and this website, to life with interactivity.
HTML
The structure and content of our web pages, including this site.
CSS
The look, layout and motion of our web pages, from colour to responsive design.
Python
Tooling and automation, such as this site’s generator and our App Store Connect scripts.
three.js
A JavaScript library for real-time 3D graphics in the browser.
CloudKit
Apple’s framework for storing app data in iCloud and syncing it across a player’s devices.
StoreKit
Apple’s framework for in-app purchases and subscriptions. Apple processes every payment.
Google AdMob
Google’s mobile ads platform, used to show ads in our free apps, with reports on how they perform.
See what it ships
Browse all 33 apps, or see how the team works together.