Apple Ecosystem Series
21 essays on shipping production iOS 26 apps in 2026: App Intents and MCP for agentic Apple; Foundation Models, Vision, and Core ML for on-device intelligence; Liquid Glass and Symbol Effects for the visual layer; multi-platform SwiftUI, Live Activities, and watchOS patterns. Drawn from production code in Water, Get Bananas, Return, and the rest of the 941 portfolio.
82 articles
Start Here
All 82 Articles
ImageCreator Is Deprecated: What Breaks in iOS 27
Apple is discontinuing Image Playground's ImageCreator class in iOS 27, with TestFlight runtime errors in beta and compile failures at public release.
Container Machines: A Persistent Linux Environment on Mac
Apple's container tool hits 1.0 with container machine: a fast, persistent Linux environment on macOS with your user, home directory, and dotfiles mou...
Xcode 27 Ships Agent Skills You Can Export Anywhere
Xcode 27 bundles two SwiftUI agent skills and a one-command exporter. xcrun agent skills export moves Apple's best practices into Claude Code or Codex...
What Apple's Performance Team Said in the WWDC26 Lab
Apple's Power & Performance team answered live developer questions at WWDC26. Field guidance on MetricKit, Power Profiler, thermals, and AI contention...
What Apple's Swift Team Said in the WWDC26 Lab
Apple's Swift Group Lab at WWDC26 ran without captions. We transcribed it locally. Candid engineer answers on concurrency, ~Sendable, and the roadmap.
Apple Is Open-Sourcing the Foundation Models Framework
WWDC 2026: the Foundation Models framework goes open source this summer, so the same Swift API runs server-side, plus a new Skills package live on Git...
What's New in Instruments 27 for App Responsiveness
Instruments 27 adds Top Functions, Run Comparisons, a Swift executors instrument, and a new Inspector panel to diagnose CPU, actor, and syscall hangs.
Foundation Models Image Input in iOS 27
iOS 27 gives the on-device Foundation Models LLM Vision: drop a UIImage, CGImage, or pixel buffer into a prompt as an attachment, and reason over it.
App Schemas: Make Your App Available to Siri
App Schemas describe an app's content and actions in terms Siri already understands, so Siri reasons over your data and acts on it, no training phrase...
USDKit: Swift-Native OpenUSD on Apple Platforms
USDKit brings first-class OpenUSD to Swift: open a stage, reference assets via composition, author accessibility, and export with mesh compression in ...
Foundation Models from Python: the fm CLI
macOS 27 ships the fm command line tool plus a Foundation Models SDK for Python, so you can script Apple's on-device model and build evaluation pipeli...
Meet Music Understanding: On-Device Audio Analysis
Music Understanding is Apple's on-device framework for analyzing a song's key, rhythm, structure, pace, instrument activity, and loudness in Swift cod...
MetricKit Rebuilt: State-Aware Telemetry in iOS 27
MetricKit is rebuilt in iOS 27: async metric and diagnostic streams, Codable reports, and a StateReporting framework that splits metrics by app state.
CSS Grid Lanes: Native Masonry in Safari
CSS Grid Lanes brings native masonry layout to Safari 26.4 in three lines of CSS, with a flow-tolerance dial that fixes masonry's old tab-order proble...
Customizable Select: Style the Real <select> at Last
Safari 27 and Chrome 135 let you style the real select element: appearance: base-select, ::picker(select), rich HTML in options, and a swappable butto...
Game Porting Toolkit 4: Agentic Game Ports on Mac
Game Porting Toolkit 4 ships agentic porting skills as a Claude Code plugin plus gpucapture and gpudebug CLI tools. Cyberpunk's manual port set the ba...
The HTML <model> Element Comes to Every Apple OS
The HTML model element now renders drop-in 3D in Safari on iOS, iPadOS, and macOS with stagemode, entityTransform, baked animation, and AR Quick Look.
Running Agentic AI on the Mac with MLX
WWDC 2026: run the full agentic AI loop locally on the Mac with MLX, scale it across multiple Macs, then secure and profile it with Apple's frameworks...
Accessibility in iOS 27: Reading Apps & Custom Controls
iOS 27 accessibility for reading apps and custom controls: text navigation linking, causesPageTurn, UITextInput, the adjustable trait, and direct touc...
What's New in visionOS 27 for Spatial Devs
visionOS 27 adds Spatial Preview from the Mac, Foveated Streaming from a PC, immersive Safari environments, metric-space object tracking, and RealityK...
What's New in Swift (2026): The WWDC26 Update
Swift 6.3 and 6.4 from WWDC26: anyAppleOS availability, module selectors, borrow/mutate accessors, the Iterable protocol, Swift Testing interop, and M...
SwiftUI Performance and Interop in iOS 27
How iOS 27 SwiftUI handles lazy-stack scrolling, GPU shader effects, and AppKit/UIKit interop, drawn from three official WWDC26 UI Frameworks sessions...
Xcode 27 Went Agentic
Xcode 27 builds coding agents into the IDE: plan-mode feature work, UI prototyping via previews, agent-driven localization, and Xcode Cloud automation...
HealthKit in iOS 27: Workout Zones, New Types
iOS 27 makes workout heart-rate zones first-class HealthKit data via HKWorkoutZoneConfiguration and HKWorkoutZoneGroup, plus new menopausalState types...
RealityKit And Reality Composer Pro 3 In 2026
WWDC26 matured Apple's spatial pipeline: RealityKit lighting and cloth, plus a standalone Reality Composer Pro 3 with live preview and Xcode plug-ins.
SwiftData in iOS 27: Observation and History
iOS 27 gives SwiftData first-class change observation with ResultsObserver, persistent-history observation with HistoryObserver, and codable attribute...
What's New in SwiftUI for iOS 27
iOS 27 reworks SwiftUI lists, documents, toolbars, and errors: drag-to-reorder, a readable/writable document model, toolbar overflow, item-based alert...
On-Device AI Across iOS 27: Spotlight and Media
iOS 27 threads the on-device model through the system: SpotlightSearchTool makes Core Spotlight LLM-grounded, and AVFoundation generates subtitles on ...
Core AI: Running Models on Apple Silicon
Core AI is iOS 27's low-level model-execution framework: asset vs model, NDArray tensors, compute-unit targeting, and inference functions on Apple sil...
App Intents in iOS 27: Background, Sync, Spotlight
iOS 27 gives App Intents background execution past 30 seconds via LongRunningIntent, cross-device identity with SyncableEntity, and Spotlight reindexi...
Building a Responsive Camera App in iOS 27
iOS 27 cuts camera launch in half with Deferred Start, adds Pro Video Storage for ProRes writes, and brings the Center Stage square front camera to yo...
Metal for Machine Learning in 2026
WWDC26 made Metal a first-class ML compute surface: Metal tensors for custom kernels, the M5 neural accelerator, real-time neural rendering, and MLX S...
Foundation Models in iOS 27: Tool-Calling Control
iOS 27 adds GenerationOptions.ToolCallingMode to steer how the on-device model uses tools, plus built-in Vision tools: OCRTool and BarcodeReaderTool.
Foundation Models on Private Cloud Compute
iOS 27 adds a server-scale Foundation Model on Private Cloud Compute with on-device privacy, plus a protocol to plug in your own LLM provider.
Evaluations: XCTest for Model Quality (iOS 27)
Apple's Evaluations framework (iOS 27, all platforms) measures AI feature quality in Swift: Evaluator, ScoreDimension, Metric, ToolCallEvaluator, and ...
Apple Foundation Models: The On-Device LLM Framework, Explained
Apple's Foundation Models framework: LanguageModelSession, @Generable guided generation, tool calling, availability, and when to leave the on-device m...
MLX on Apple Silicon: When You Need Your Own Model, Not Apple's
Foundation Models gives you Apple's sealed on-device LLM. MLX runs your own: quantized open-weight models and LoRA fine-tunes on Apple Silicon.
Swift 6.2 Concurrency in Practice: Default to MainActor, Escape on Purpose
Swift 6.2 inverts concurrency: default your module to MainActor (SE-0466), run nonisolated async on the caller (SE-0461), escape with @concurrent.
Apple's Translation Framework: Free, On-Device, and Sharper Than It Looks
Apple's Translation framework: free on-device translation via translationPresentation and TranslationSession, plus the offline-download edges demos sk...
The iOS 26 Widget Surface: One App Intent, Many Places
iOS 26 widgets, Control Center controls, and Live Activities are all App Intents surfaces. One intent powers buttons, controls, and Live Activity acti...
App Intents 2.0 in iOS 26: Visual Intelligence and Snippets
iOS 26 expanded App Intents with IntentValueQuery for Visual Intelligence, @DeferredProperty for async values, interactive snippets, entity view annot...
Image Playground API: SwiftUI Sheet, Programmatic Image Creator, And Style Control
Image Playground gives apps two paths: the SwiftUI imagePlaygroundSheet modifier and the programmatic ImageCreator API for generating images from conc...
Apple Silicon TBDR: What App Developers Actually Get
Apple silicon GPUs use tile-based deferred rendering. Imageblocks, tile shaders, raster order groups, and A11+ enhancements that change Metal app desi...
Metal 4 Essentials: What The New Core API Actually Changes
Metal 4 ships parallel MTL4-prefixed types alongside Metal in iOS 26. Multi-threaded command encoding, unified compute, and ML as a first-class GPU pa...
Genmoji and NSAdaptiveImageGlyph: Inline Emoji on iOS 18+
Genmoji ships as NSAdaptiveImageGlyph in attributed text. Apps using UITextView with TextKit 2 enable supportsAdaptiveImageGlyph and handle serializat...
Foundation Models Use Cases: General vs Content Tagging
iOS 26 Foundation Models has .general and .contentTagging use cases. Use Apple's rules to decide when prompting beats specialization.
Foundation Models Custom Adapters: When To Train One
iOS 26 Foundation Models custom adapters train LoRA weights, export .fmadapter packages, ship via Background Assets, and require Apple's entitlement.
AVFoundation HDR And Apple Log: Pro Video Workflows On iPhone
iPhone 15 Pro+ records Apple Log alongside HEVC and ProRes. AVFoundation exposes HDR (HLG, HDR10, Dolby Vision) and Apple Log through AVCaptureDevice.
Custom SF Symbols: The Variable Template And The Three Required Sources
SF Symbols creates 27 variations from three source designs. The variable template, compatible-data path requirements, rendering modes, and the Xcode h...
HealthKit Workout Lifecycle: HKWorkoutSession States And The iOS 26 Cross-Platform Surface
watchOS workout sessions move through a six-state lifecycle. iOS 26 brought HKWorkoutSession to iPhone. The state machine, the live builder, and the d...
SwiftUI Layout Protocol: Building Custom Layouts From sizeThatFits To placeSubviews
iOS 16's Layout protocol lets apps build custom layouts with two methods. sizeThatFits, placeSubviews, the proposal contract, layout values, and cachi...
@Observable Internals: The Macro, The Registrar, And What ObservableObject Got Wrong
@Observable replaces ObservableObject's broadcast model with per-property access tracking. The macro expansion, the registrar, and the migration trap.
SF Pro: Variable Axes, Optical Sizing, And The Dynamic Type Contract
Apple's system font ships with three variable axes and continuous optical sizing. The vocabulary that makes typography work across the Apple platforms...
SwiftData Migrations: Lightweight vs Custom, And When You Don't Need a V2
SwiftData's migration model uses VersionedSchema, MigrationStage, and SchemaMigrationPlan. Most schema changes don't need a V2 schema; the cases that ...
tvOS Focus Engine: SwiftUI Patterns for the Siri Remote
Apple TV navigates by focus, not touch. SwiftUI's .focusable, @FocusState, focusSection, and prefersDefaultFocus are the vocabulary. The patterns that...
Core ML On-Device Inference: The Patterns That Actually Ship
Core ML runs models on Neural Engine, GPU, or CPU. The patterns that ship: model conversion, dispatch hinting, latency budgets, and quantization.
Accessibility As Platform: Personal Voice, Live Speech, Eye Tracking, Music Haptics
Personal Voice, Live Speech, Eye Tracking, Music Haptics, Vocal Shortcuts: accessibility as platform features, not app responsibilities.
Writing Tools API: How Apps Plug Into Apple Intelligence's Writing Layer
iOS 18 introduced Writing Tools. iOS 26 makes adoption a single property for standard text views, and a designed coordinator API for custom text engin...
Symbol Effects: SwiftUI's Built-In Animation Vocabulary For Every Icon
SF Symbols ships an animation vocabulary every iOS app can speak. Bounce, pulse, scale, replace, variable color, breathe: already designed, accessible...
Swift Testing: The Framework Replacing XCTest, and What Stays In XCTest
Swift Testing ships with Xcode 16+ and Swift 6. Macros, traits, parametrized tests, parallel by default. Migrate incrementally; UI tests stay in XCTes...
The Privacy Manifest Deep Dive: What Counts As Data Collection
Apple's privacy manifest is a structured contract, not a checkbox: four sections, five required-reason API categories, SDK rules, common gotchas.
visionOS Spatial Patterns Beyond the Window
Apps that float an iPad UI on Vision Pro miss the platform. Windows, Volumes, Immersive Spaces, ornaments, attachments: the visionOS-native vocabulary...
Apple's New Speech Framework: SpeechAnalyzer vs SFSpeechRecognizer
iOS 26 introduces SpeechAnalyzer with SpeechTranscriber + SpeechDetector modules, an on-device replacement for SFSpeechRecognizer. When to migrate.
Apple Vision Framework: On-Device CV Most Devs Skip
Apple Vision ships more than two dozen on-device CV operations. Most devs default to OpenAI Vision for tasks Vision performs in milliseconds, free, on...
The Apple Platform Matrix: Which Targets Deserve Which App
iOS, iPad, Mac, Watch, Vision, TV. Six platforms, six obligations. Picking Apple targets is a product decision before it is an engineering one.
Hooks For Apple Development: Patterns That Save The Project
An iOS agent has the developer's signing keys, builds, and project file reachable. Hooks bound the blast radius. Four shipping patterns.
Foundation Models Agentic Workflow: In-App Vs Tooling LLM
Two LLMs touch a Swift app. The on-device model that ships with the app and the agent that wrote the code. Different stacks, different obligations.
Three Surfaces: Human, Apple Intelligence, Agent
Every iOS app capability faces three surfaces: human, Apple Intelligence, agent. Each has different obligations, rendering, latency, and trust posture...
Single Source Of Truth: SwiftData, MCP, iCloud
Three callers can write to the same shopping list: a human, Apple Intelligence, and an external agent. Truth has to live somewhere. Pick the substrate...
What I Refuse To Write About
A blog cluster's voice comes from what it refuses to publish, not what it ships. Categorical, pattern, and interesting refusals each shape what the cl...
App Intents vs MCP: The Routing Question
Two protocols, one app. App Intents expose your app to Apple Intelligence. MCP exposes the same domain to Claude, ChatGPT, and the rest. The routing q...
Live Activities Are a State Machine, Not a Badge
Return's Live Activity looks like a Lock Screen countdown. It is a five-state lifecycle machine with three dismissal paths. The production code and bu...
Foundation Models On-Device LLM: The Tool Protocol
iOS 26's Foundation Models framework puts a 3B-parameter LLM on every Apple Intelligence device. The Tool protocol is the surface that makes the model...
What SwiftUI Is Made Of
SwiftUI is a result-builder DSL on top of a value-typed View tree. Once the substrate is visible, AnyView, Group, and ViewBuilder stop being mysteriou...
SwiftData's Real Cost Is Schema Discipline
SwiftData's API is two macros. The cost is what happens after you ship. Optional fields are the cheap migration; non-optional adds need a VersionedSch...
watchOS Runtime Is a Contract, Not a Background Task
watchOS has no iOS-style background. WKExtendedRuntimeSession is the contract; without it, the app suspends on wrist drop. Pattern shipped in Return.
RealityKit And The Spatial Mental Model
RealityKit is an entity-component-system, not SwiftUI in 3D. Anchors place entities in real space. Five ways the model differs from a window.
Five Apple Platforms, Three Shared Files: How Return Actually Ships Cross-Platform SwiftUI
Return runs on iPhone, iPad, Mac, Apple Watch, and Apple TV. Three Swift files are shared across all five targets out of 40 total. The rest is duplica...
Liquid Glass in SwiftUI: Three Patterns From Shipping Return on iOS 26
Apple's Liquid Glass is a one-line SwiftUI API. Three patterns from Return go beyond .glassEffect(): glass on text via Core Text glyph paths, mirror r...
MCP Server Alongside an iOS App: Two Agent Ecosystems, One List
Get Bananas runs on iOS, macOS, watchOS, and visionOS. It also lives inside Claude Desktop as an MCP server. Bridge: iCloud Drive plus a JSON file.
HealthKit + SwiftUI on iOS 26: Authorization, Sample Types, and Cross-Platform Patterns
Real production patterns from Water (water tracking, HKQuantitySample) and Return (mindful sessions, HKCategorySample). Permission UX, async wrappers,...
App Intents Are Apple's New API to Your App
I shipped an App Intent in Water on Feb 8, 2026. Here's what Apple Intelligence wants from third-party apps in iOS 26, and why App Intents are the con...