Swift & structured concurrency
Swift across every module; async/await and actors keep the main thread free while the work happens in the background.
What we build and ship for iPhone and iPad — the Swift stack, the apps on the App Store, and the privacy work woven through both.
iPhone and iPad builds of the same product family, shipped the Apple way: carefully, privately, and through TestFlight first.
Technology
What every iOS release leans on — from language choice to the profiler.
Swift across every module; async/await and actors keep the main thread free while the work happens in the background.
New surfaces start in SwiftUI; complex gestures, list performance and fine-grained controls still lean on UIKit — the two mix on purpose.
Keychain for anything secret, permission prompts that appear only where a feature truly needs them, and processing kept on-device wherever it can be.
Launch time, scroll frame rate and memory footprints are measured on every candidate build; a regression is a blocker, not a note.
Shipping
Every iOS build walks the same road — self-check, review, TestFlight, release — with privacy kept honest at each step.
Before anything is uploaded we self-review against the App Store Review Guidelines and audit the privacy labels against what the app actually touches.
Builds go through Apple’s review like every other app — submitted with purpose strings clear enough to invite fewer questions.
New builds run with internal teams and external testers in TestFlight; feedback and crash reports shape the public version.
After release, privacy manifests and permission usage stay honest with every change. Tracking prompts only appear if a feature ever needs tracking; today, none do.
Notes and Scan on iPhone and iPad — the products page holds the full story, Android side included.