Apple’s app modernization skill, previously “Modernize your UIKit app”, now covers SwiftUI and iPhone Duo in Xcode 27.1 under the name App Resizability.
Use it as a first pass
It is good at the mechanical, high-volume work: finding fixed frame sizes, flagging main-screen references, surfacing symmetric safe-area math, pointing at code that will not resize.
It cannot make design decisions. Whether a screen should become a split view, what belongs on the outer display, which actions deserve .visibilityPriority(.high) — those need judgement about your product.
A sensible order:
- Rebuild against the iOS 27.1 SDK.
- Run App Resizability and review every change it proposes.
- Work the blocker items on this checklist by hand.
- Only then consider the new adaptive APIs — arrangements, reserved regions, scene accessories.
Review its output rather than accepting it
Automated fixes tend to be locally correct and globally bland. Replacing a fixed width with maxWidth: .infinity is right in a stack and wrong in a form field that now spans 626 points. Read each change with the surrounding layout in mind.
How to verify
After running the skill, build and walk the pose matrix. Treat its changes as a starting draft to review, not a completed migration.