153 posts under the SwiftUI tag, plus wwdc25 and wwdc26. Filtering them against what our code actually contains turned up one real defect and a short list worth keeping. The defect is plurals. A checkout screen renders "\(count) coupons", whose Czech translation is the single form "%lld kupónů" — so it says "1 kupónů" and "3 kupónů", wrong for every count below five. The article that surfaced it recommends inflect:, which covers English, Spanish and six others but not Czech, the language that needs three forms rather than two. Plural variations in the String Catalog are the fix for us; the entry says so rather than repeating the article's advice. Two entries are filed against a future rather than now: swipe action buttons draw their titles from iOS 26, which will surprise us the day we add a custom one, and a Form inside a sheet covers the glass behind it, which starts to matter if the payment sheet ever gets a medium detent. The rest is recorded as swept and skipped, with reasons — including that Core Spotlight and the search tab are things we already do correctly, and that three posts are covered better by the skills shipping inside Xcode. A sweep that leaves no trace of what it rejected gets repeated. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2.1 KiB
Checked, not adopted
The sweep through nilcoalescing.com covered 153 posts tagged SwiftUI plus the wwdc25 and wwdc26 tags. Most of it does not apply to us. This file records the ones worth explaining, so the next sweep does not re-open them.
Already doing it
- Core Spotlight indexing — we index cards and handle
onContinueUserActivity(CSSearchableItemActionType)already. - The iOS 26 search tab — we use
Tab(role: .search)withsearchable(), which is what the article recommends. Its other suggestions (searchToolbarBehavior(),DefaultToolbarItem(kind: .search)) are for apps that keep search in a toolbar rather than a tab.
Re-reading these was not wasted: confirming that a decision still matches current guidance is worth something, and takes a minute.
Apple's own skills cover it better
Three posts overlap directly with the skills that ship inside Xcode, which go deeper and are maintained with the SDK. Prefer those.
| Post | Covered by |
|---|---|
| Equatable properties in @Observable classes | swiftui-specialist/references/dataflow.md |
| The hidden cost of unstable environment defaults | swiftui-specialist/references/environment.md |
| Custom bindings: closures vs subscripts | swiftui-specialist/references/dataflow.md |
The binding one is a good example of why the Apple skills earn their
place: it describes the exact anti-pattern we removed from four sheets —
Binding(get:set:) built inside body — and we found it through the
skill during review, before the article ever came up.
Not our shape
Blend modes, mesh gradients, TimelineView, macOS window and menu-bar
work, Canvas frame reprojection, MapKit polyline gradients, UIKit
interop. Good writing, nothing to act on here.
Filed elsewhere
- Dynamic Type truncation —
fixedSize(horizontal: false, vertical: true)is the fix when text in a scrollable container gets cut off at accessibility sizes. Our card tiles deliberately useminimumScaleFactorinstead, which is right for a fixed-height tile. Worth remembering for descriptive text, not for the tiles.