Sign in

Snapp iOS Weekly

@snappiosweekly.bsky.social
358 followers 2.3K following 763 posts

Weekly Swift & iOS dev insights from @snappmobile.bsky.social 📬 ios-newsletter.snappmobile.io/subsc…

PostsRepliesMedia
Snapp iOS Weekly @snappiosweekly.bsky.social · 6h
📢 𝗜𝘀𝘀𝘂𝗲 𝟭𝟭𝟮 𝗶𝘀 𝗼𝘂𝘁! Featuring: 🌐 𝑆𝑤𝑖𝑓𝑡 𝑊𝑎𝑠𝑚 𝑆𝑒𝑝𝑡𝑒𝑚𝑏𝑒𝑟 ⚡ 𝑊𝑖𝑡ℎ𝑇𝑎𝑠𝑘𝐶𝑎𝑛𝑐𝑒𝑙𝑙𝑎𝑡𝑖𝑜𝑛𝑆ℎ𝑖𝑒𝑙𝑑: 𝑆𝑤𝑖𝑓𝑡 6.4 📊 𝐼𝑛𝑠𝑖𝑑𝑒 𝑖𝑂𝑆 27𝑠 🔶 𝐺𝑒𝑡𝑡𝑖𝑛𝑔 𝑠𝑡𝑎𝑟𝑡𝑒𝑑 𝑆𝑦𝑠𝑡𝑒𝑚
ios-newsletter.snappmobile.io
iOS Newsletter Issue 112
8 articles: Swift for Wasm September 2026 Updates, withTaskCancellationShield: Swift 6.4 new feature, Inside iOS 27's Reworked Stub Islands, and 5 more
100
Snapp iOS Weekly @snappiosweekly.bsky.social · 01/10/2026
🔧 𝑖𝑃ℎ𝑜𝑛𝑒 𝐷𝑢𝑜 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝑙𝑎𝑦𝑜𝑢𝑡𝑠 by Florian (@typ0genius.com) A visual gallery for iPhone Duo layouts is exactly the kind of reference that saves time when your mental model starts lying to you. #iOSDev #SwiftUI exploreswiftui.com/duo
exploreswiftui.com
iPhone Duo SwiftUI layouts
A visual gallery for iPhone Duo layouts is exactly the kind of reference that saves time when your mental model starts lying to you. Instead of guessing how a `NavigationSplitView` behaves across portrait, landscape, closed, partially open, and fully open states, you can scan screenshots and compare the variants directly. It is not trying to be a deep essay, and that is fine — sometimes our apps need a quick “what does SwiftUI actually do here?” check before we start adding custom logic. Keep this one nearby when reviewing Duo layout changes.
041
Snapp iOS Weekly @snappiosweekly.bsky.social · 01/10/2026
🛠️ 𝐽𝑒𝑣 𝑓𝑜𝑟 𝐴𝑝𝑝𝑙𝑒 𝐹𝑜𝑢𝑛𝑑𝑎𝑡𝑖𝑜𝑛 𝑀𝑜𝑑𝑒𝑙𝑠 by Peter Friese (@peterfriese.dev) 𝑗𝑒𝑣-𝑓𝑜𝑢𝑛𝑑𝑎𝑡𝑖𝑜𝑛-𝑚𝑜𝑑𝑒𝑙𝑠 plugs TypeSafe AI’s Jev decision model into Apple’s Foundation Models APIs, which is an interesting fit for cases where we need typed decisions… #iOSDev #Apple github.com/peterfriese/...
github.com
Jev for Apple Foundation Models
`jev-foundation-models` plugs TypeSafe AI’s Jev decision model into Apple’s Foundation Models APIs, which is an interesting fit for cases where we need typed decisions, not another paragraph of generated text. The package maps `@Generable` structs and enums into fast boolean, choice, and score evaluations, then feeds the result back through `LanguageModelSession` with confidence metadata. I’m especially glad the README leads with the mobile API-key warning, because shipping secrets in an app binary is still not a clever shortcut, it is just a future incident. For triage, routing, deduping, and other “make a call from structured state” jobs, this is a neat bridge to watch.
010
Snapp iOS Weekly @snappiosweekly.bsky.social · 30/09/2026
🧠 𝐵𝑎𝑐𝑘𝑝𝑜𝑟𝑡𝑖𝑛𝑔 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝐴𝑃𝐼𝑠 by Majid Jabrayilov (@mecid.bsky.social) New SwiftUI APIs arriving in iOS 27.1 are nice, but bumping the whole deployment target just to use 𝑡𝑜𝑜𝑙𝑏𝑎𝑟𝑉𝑒𝑟𝑡𝑖𝑐𝑎𝑙𝐵𝑒ℎ𝑎𝑣𝑖𝑜𝑟 is rarely how our apps work. #iOSDev #SwiftUI swiftwithmajid.com/2026/09/22/b...
swiftwithmajid.com
Backporting SwiftUI APIs
New SwiftUI APIs arriving in iOS 27.1 are nice, but bumping the whole deployment target just to use `toolbarVerticalBehavior` is rarely how our apps work. The backport pattern here is intentionally small: wrap the new modifier behind availability checks, either under a `.backport` namespace or with a `ported` prefix that deprecates itself once the real API is safe to require. I prefer the deprecation approach because it leaves breadcrumbs for future cleanup, and future cleanup is where these little compatibility shims usually go to die. Use the new Duo behavior now, keep older OS support, and make the compiler remind you when the shim has outlived its usefulness.
000
Snapp iOS Weekly @snappiosweekly.bsky.social · 30/09/2026
💡 𝐴𝑟𝑟𝑎𝑛𝑔𝑒𝑚𝑒𝑛𝑡𝑉𝑖𝑒𝑤, 𝑇𝑜𝑜𝑙𝑏𝑎𝑟 𝐵𝑒ℎ𝑎𝑣𝑖𝑜𝑟𝑠 𝑎𝑛𝑑 𝑚𝑜𝑟𝑒! 𝐶𝑜𝑑𝑒 𝑆𝑛𝑖𝑝𝑝𝑒𝑡 + 𝐷𝑒𝑚𝑜 𝑉𝑖𝑑𝑒𝑜! by Itsuki A quick tour through the iOS 27.1 Duo APIs, with code you can paste into a small demo instead of just staring at documentation. #iOSDev #SwiftUI #Apple medium.com/@itsuki.enjo...
medium.com
ArrangementView, Toolbar Behaviors and more! Code Snippet + Demo Video!
A quick tour through the iOS 27.1 Duo APIs, with code you can paste into a small demo instead of just staring at documentation. The toolbar pieces line up with Apple’s new vertical bar model — per-item axis behavior, whole-presentation vertical behavior, compression choices, and the `toolbarVerticalEdge` environment value. The extra wrinkle is `ArrangementView`, which gives SwiftUI a native way to juggle primary and secondary content through split, overlay, and custom styles. Some of it still feels like we need real devices and real apps to develop taste, but that is exactly why small demos like this help.
000
Snapp iOS Weekly @snappiosweekly.bsky.social · 29/09/2026
🚀 𝑆ℎ𝑒𝑒𝑡𝑠 𝑎𝑛𝑑 𝑓𝑜𝑙𝑑 𝑎𝑣𝑜𝑖𝑑𝑎𝑛𝑐𝑒 𝑜𝑛 𝑖𝑃ℎ𝑜𝑛𝑒 𝐷𝑢𝑜 by Sarun W. (@sarunw.bsky.social) Sheets on iPhone Duo mostly do the right thing, but “mostly” is where the product polish lives. #iOSDev sarunw.com/posts/sheets...
sarunw.com
Sheets and fold avoidance on iPhone Duo
Sheets on iPhone Duo mostly do the right thing, but “mostly” is where the product polish lives. Across closed, open, and partially folded poses, the system moves sheet controls, centers presentations, or slides UI away from the fold so actions do not land in awkward places. The practical takeaway is simple: start with standard sheets and system components, then disable vertical toolbar behavior for the cases where one lonely Close button steals too much width. It is a good reminder that Duo adaptation is less about inventing a new layout religion and more about checking the weird poses before our users do.
001
Snapp iOS Weekly @snappiosweekly.bsky.social · 29/09/2026
🎨 𝐶𝑜𝑛𝑓𝑖𝑔𝑢𝑟𝑖𝑛𝑔 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝑡𝑜𝑜𝑙𝑏𝑎𝑟𝑠 𝑜𝑛 𝑖𝑃ℎ𝑜𝑛𝑒 𝐷𝑢𝑜 by Natalia Panferova (@natpanferova.bsky.social) SwiftUI’s iPhone Duo toolbar story is getting more specific now: vertical bars, item axis behavior, compression… #iOSDev #SwiftUI nilcoalescing.com/blog/Configu...
nilcoalescing.com
Configuring SwiftUI toolbars on iPhone Duo
SwiftUI’s iPhone Duo toolbar story is getting more specific now: vertical bars, item axis behavior, compression priorities, and an escape hatch when the vertical layout makes a screen worse. The useful bit is not “new modifiers exist”, it is the judgment around when to let the system adapt and when to pin an item to horizontal space. `axisBehavior(_:)`, `toolbarVerticalEdge`, and `toolbarVerticalCompressionBehavior(_:)` give us just enough control without turning every toolbar into a custom layout project. I like this because it keeps our apps in the system’s lane, but still lets us say, “no, that slider really should not be crammed into the side bar.”
022
Snapp iOS Weekly @snappiosweekly.bsky.social · 28/09/2026
📱 𝐹𝑟𝑜𝑚 𝑝𝑏𝑥𝑝𝑟𝑜𝑗 𝑡𝑜 𝑥𝑐𝑝𝑟𝑜𝑗: 𝑋𝑐𝑜𝑑𝑒 𝑃𝑟𝑜𝑗𝑒𝑐𝑡 𝐶𝑜𝑛𝑓𝑖𝑔𝑢𝑟𝑎𝑡𝑖𝑜𝑛 𝐺𝑒𝑡𝑠 𝑎 𝐽𝑆𝑂𝑁 𝐹𝑜𝑟𝑚𝑎𝑡 by Xu Yang (@fatbobman.com) Xcode 27.2’s new 𝑝𝑟𝑜𝑗𝑒𝑐𝑡.𝑥𝑐𝑝𝑟𝑜𝑗 format is one of those boring-looking changes that… #iOSDev #Apple #Xcode fatbobman.com/en/posts/fro...
fatbobman.com
From pbxproj to xcproj: Xcode Project Configuration Gets a JSON Format
Xcode 27.2’s new `project.xcproj` format is one of those boring-looking changes that could save real pain in our codebase. The old `pbxproj` file has always been a merge-conflict magnet, full of flat object tables and IDs nobody wants to review. JSON alone is not the win here; the nicer part is that Apple reshaped the project graph so file membership and build settings read closer to what we actually changed. Not a revolution, no, but for teams still touching `.xcodeproj` directly — and for coding agents trying not to mangle it — this feels like overdue cleanup.
000
Snapp iOS Weekly @snappiosweekly.bsky.social · 28/09/2026
⚡ 𝑆𝑤𝑖𝑓𝑡 6 𝐺𝑎𝑣𝑒 𝑀𝑒 𝑍𝑒𝑟𝑜 𝑊𝑎𝑟𝑛𝑖𝑛𝑔𝑠, 𝑏𝑢𝑡 𝑇𝑤𝑜 𝑂𝑏𝑗𝑒𝑐𝑡𝑖𝑣𝑒-𝐶 𝐶𝑎𝑙𝑙𝑏𝑎𝑐𝑘𝑠 𝑆𝑡𝑖𝑙𝑙 𝐶𝑟𝑎𝑠ℎ𝑒𝑑 𝑎𝑡 𝑅𝑢𝑛𝑡𝑖𝑚𝑒 by Amana Swift 6 strict concurrency can still leave a nasty hole when Objective-C APIs take… #iOSDev #Concurrency #Testing hackernoon.com/swift-6-gave...
hackernoon.com
Swift 6 Gave Me Zero Warnings, but Two Objective-C Callbacks Still Crashed at Runtime
Swift 6 strict concurrency can still leave a nasty hole when Objective-C APIs take plain callback blocks and run them on queues the Swift type system cannot see. The crashes here come from `BGTaskScheduler` and PhotoKit callbacks created inside `@MainActor` code, then invoked off the main actor before the `Task { @MainActor in ... }` body even gets a chance to run. That is the kind of bug that looks “obviously handled” in review, which is why the concrete grep targets and testing advice are useful. If our apps bridge into older Apple frameworks — and of course they do — this is worth reading with crash logs open.
000
Snapp iOS Weekly @snappiosweekly.bsky.social · 25/09/2026
📢 𝗜𝘀𝘀𝘂𝗲 𝟭𝟭𝟭 𝗶𝘀 𝗼𝘂𝘁! Featuring: ⚡ 𝑆𝑤𝑖𝑓𝑡 6 𝐺𝑎𝑣𝑒 📱 𝐹𝑟𝑜𝑚 𝑝𝑏𝑥𝑝𝑟𝑜𝑗 𝑥𝑐𝑝𝑟𝑜𝑗 🎨 𝐶𝑜𝑛𝑓𝑖𝑔𝑢𝑟𝑖𝑛𝑔 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝑡𝑜𝑜𝑙𝑏𝑎𝑟𝑠 🚀 𝑆ℎ𝑒𝑒𝑡𝑠 𝑓𝑜𝑙𝑑 𝑎𝑣𝑜𝑖𝑑𝑎𝑛𝑐𝑒
ios-newsletter.snappmobile.io
iOS Newsletter Issue 111
8 articles: Swift 6 Gave Me Zero Warnings, but Two Objective-C Callbacks Still Crashed at Runtime, From pbxproj to xcproj: Xcode Project Configuration Gets a JSON Format, Configuring SwiftUI toolbars on iPhone Duo, and 5 more
100
Snapp iOS Weekly @snappiosweekly.bsky.social · 24/09/2026
🚀 𝐻𝑜𝑚𝑒𝑏𝑟𝑒𝑤/𝐵𝑟𝑒𝑤𝑈𝐼 by Homebrew BrewUI is Homebrew’s official macOS GUI, built in SwiftUI, and I’m happy it exists for a simple reason: not everyone wants package management to start in Terminal. #iOSDev #SwiftUI github.com/Homebrew/Bre...
github.com
Homebrew/BrewUI
BrewUI is Homebrew’s official macOS GUI, built in SwiftUI, and I’m happy it exists for a simple reason: not everyone wants package management to start in Terminal. The project is careful about transparency, showing what Homebrew is doing rather than turning installs and upgrades into a mystery button. It also has a very pragmatic environment model — clean zsh launch, explicit `brew.env` files, and a Configuration tab to explain what the app sees. A native SwiftUI app around a beloved command-line tool? That is a nice little macOS story, and maybe a useful reference for our own developer-facing utilities.
064
Snapp iOS Weekly @snappiosweekly.bsky.social · 24/09/2026
🛠️ 𝑀𝑎𝑛𝑎𝑔𝑖𝑛𝑔 𝑀𝑢𝑙𝑡𝑖-𝑅𝑒𝑝𝑜𝑠𝑖𝑡𝑜𝑟𝑦 𝐸𝑛𝑡𝑒𝑟𝑝𝑟𝑖𝑠𝑒 𝑖𝑂𝑆 𝐸𝑐𝑜𝑠𝑦𝑠𝑡𝑒𝑚𝑠 𝑎𝑡 𝑆𝑐𝑎𝑙𝑒 by Flaregun-dev (@hackernoon.com) Large iOS codebases rarely stay neat, and this piece walks through the mess without pretending one repo strategy solves everything. #iOSDev #Xcode hackernoon.com/managing-mul...
hackernoon.com
Managing Multi-Repository Enterprise iOS Ecosystems at Scale
Large iOS codebases rarely stay neat, and this piece walks through the mess without pretending one repo strategy solves everything. Swift Package Manager is the center of gravity now, with private registries, binary XCFramework targets, CI tokens, automated version bumps, and the occasional Xcode workspace still doing useful work at the edges. The practical thread is consistency: exact versions, repeatable builds, shared compiler settings, and dependency updates that move through PRs instead of folklore. If our apps depend on a dozen internal libraries, “it builds on my machine” is not a process. It’s a warning sign.
010
Snapp iOS Weekly @snappiosweekly.bsky.social · 23/09/2026
📊 𝐷𝑖𝑎𝑔𝑛𝑜𝑠𝑖𝑛𝑔 𝐹𝑜𝑟𝐸𝑎𝑐ℎ 𝑝𝑒𝑟𝑓𝑜𝑟𝑚𝑎𝑛𝑐𝑒 𝑖𝑠𝑠𝑢𝑒𝑠 𝑖𝑛 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝑙𝑎𝑧𝑦 𝑐𝑜𝑛𝑡𝑎𝑖𝑛𝑒𝑟𝑠 by Natalia Panferova (@natpanferova.bsky.social) There’s a tiny launch argument here that deserves a spot in every SwiftUI performance… #iOSDev #SwiftUI #Performance nilcoalescing.com/blog/Diagnos...
nilcoalescing.com
Diagnosing ForEach performance issues in SwiftUI lazy containers
There’s a tiny launch argument here that deserves a spot in every SwiftUI performance debugging checklist: `-LogForEachSlowPath YES`. It catches `ForEach` content inside lazy containers when SwiftUI can’t know the number of views per element without evaluating offscreen rows, which is exactly the kind of invisible work that makes lists feel haunted. The fix is not always “wrap it in a `VStack`”; sometimes we should filter the collection before `ForEach`, and sometimes grouping is the right move because the element still exists. Small detail, big payoff. Our lists are only lazy if we stop making SwiftUI guess.
032
Snapp iOS Weekly @snappiosweekly.bsky.social · 23/09/2026
⚡ 𝐻𝑜𝑤 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝑎𝑛𝑖𝑚𝑎𝑡𝑖𝑜𝑛 𝑤𝑜𝑟𝑘𝑠 by OpenSwiftUI Project SwiftUI animation is easy to use and weirdly easy to misunderstand, especially once “async” and Core Animation show up in the same conversation. #iOSDev #SwiftUI #Concurrency openswiftuiproject.org/blog/how-swi...
openswiftuiproject.org
How SwiftUI animation works
SwiftUI animation is easy to use and weirdly easy to misunderstand, especially once “async” and Core Animation show up in the same conversation. This deep dive follows OpenSwiftUI’s iOS 18 animation model and makes the boundary clearer: SwiftUI samples animation values in the app process, then submits presentation updates; Core Animation still composites, but it is not necessarily owning the spring’s clock. That distinction matters when we’re chasing hitches in our apps. Don’t just blame “the animation” — trace state, graph updates, sampling, layer updates, and compositing like separate suspects.
031
Snapp iOS Weekly @snappiosweekly.bsky.social · 22/09/2026
🎨 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝐴𝑔𝑒𝑛𝑡 𝑆𝑘𝑖𝑙𝑙: 𝐼𝑛𝑠𝑡𝑎𝑙𝑙 𝑎𝑛𝑑 𝑢𝑠𝑒 𝑤𝑖𝑡ℎ 𝐴𝐼 𝑐𝑜𝑑𝑖𝑛𝑔 𝑡𝑜𝑜𝑙𝑠 by Antoine van der Lee (@avanderlee.com) A reusable SwiftUI skill for coding agents is exactly the sort of thing that starts sounding optional, right up until… #iOSDev #SwiftUI #Xcode www.avanderlee.com/ai-developme...
avanderlee.com
SwiftUI Agent Skill: Install and use with AI coding tools
A reusable SwiftUI skill for coding agents is exactly the sort of thing that starts sounding optional, right up until the third generated view ships with stale `onChange` patterns and confused state ownership. Version 5.0.0 adds verified Xcode 27 and SDK 27 guidance, with focused references for layout, accessibility, animation, state, lists, toolbars, WebKit, and more. The nice part is the shape: a compact skill file that pulls in deeper notes only when relevant, instead of stuffing every rule into one giant prompt. Our codebase gets better results, and our context window does not become a landfill.
020
Snapp iOS Weekly @snappiosweekly.bsky.social · 22/09/2026
🧩 𝐻𝑜𝑤 𝑡𝑜 𝐸𝑥𝑝𝑜𝑟𝑡 𝑎𝑛𝑑 𝑈𝑠𝑒 𝑋𝑐𝑜𝑑𝑒 27'𝑠 𝐴𝑔𝑒𝑛𝑡 𝑆𝑘𝑖𝑙𝑙𝑠 𝑖𝑛 𝐶𝑙𝑎𝑢𝑑𝑒 𝐶𝑜𝑑𝑒 by Mick MacCallum Xcode 27 exporting Apple’s own agent skills is a small command with a pretty big implication: our external agents can… #iOSDev #SwiftUI #Testing bleepingswift.com/blog/xcode-2...
bleepingswift.com
How to Export and Use Xcode 27's Agent Skills in Claude Code
Xcode 27 exporting Apple’s own agent skills is a small command with a pretty big implication: our external agents can now carry some of Apple’s platform guidance with them. The walkthrough shows how to dump those skills into Claude Code, Cursor, Codex, or a shared `~/.agents/skills` folder, then let the agent load SwiftUI, testing, UIKit modernization, or security guidance only when it needs it. I like this because it treats AI assistance less like magic and more like tooling we can configure. And honestly, who doesn’t want the agent to stop guessing at SwiftUI when Apple already wrote the notes?
030
Snapp iOS Weekly @snappiosweekly.bsky.social · 21/09/2026
🔒 [𝐿𝑎𝑚𝑏𝑑𝑎] : 𝑆𝑤𝑖𝑓𝑡 𝐴𝑊𝑆 𝐿𝑎𝑚𝑏𝑑𝑎 𝑅𝑢𝑛𝑡𝑖𝑚𝑒 3.0.0 𝑟𝑒𝑙𝑒𝑎𝑠𝑒𝑑 by Sébastien Stormacq (@sebsto.bsky.social) Swift AWS Lambda Runtime 3.0.0 lands with the kind of changes server-side Swift teams will care about immediately… #iOSDev forums.swift.org/t/lambda-swi...
forums.swift.org
[Lambda] : Swift AWS Lambda Runtime 3.0.0 released
Swift AWS Lambda Runtime 3.0.0 lands with the kind of changes server-side Swift teams will care about immediately: `nonisolated(nonsending)` by default, new lifecycle plugins, ZIP or OCI deployment, and task-local logging. The breaking change may sting a bit, sure, but keeping handler execution on the caller’s executor is the right kind of boring correctness. The new `lambda-init`, `lambda-build`, and `lambda-deploy` flow also makes Lambda feel less like a hand-rolled side quest. If our backend glue is going to be Swift too, this is the direction it needed to go.
030
Snapp iOS Weekly @snappiosweekly.bsky.social · 21/09/2026
📱 𝑆𝑤𝑖𝑓𝑡 6.4 𝑅𝑒𝑙𝑒𝑎𝑠𝑒𝑑 by Joe Heck & Holly Borla Swift 6.4 is one of those releases where the headline is not one giant feature, but a lot of pressure being taken off real projects. #iOSDev #Concurrency #Testing www.swift.org/blog/swift-6...
swift.org
Swift 6.4 Released
Swift 6.4 is one of those releases where the headline is not one giant feature, but a lot of pressure being taken off real projects. Swift Build becoming the default in SwiftPM, Subprocess hitting 1.0, better Swift Testing migration, richer interop, faster Wasm bridging — it all points to Swift getting more comfortable outside the narrow “app language” box. For our apps, the async `defer`, cancellation shields, warning controls, and non-copyable collection work are the bits I’d actually expect to feel in code reviews. Less ceremony, fewer weird edges, and a language that keeps growing without pretending memory safety is optional.
031
Snapp iOS Weekly @snappiosweekly.bsky.social · 18/09/2026
📢 𝗜𝘀𝘀𝘂𝗲 𝟭𝟭𝟬 𝗶𝘀 𝗼𝘂𝘁! Featuring: 📱 𝑆𝑤𝑖𝑓𝑡 6.4 𝑅𝑒𝑙𝑒𝑎𝑠𝑒𝑑 🔒 [𝐿𝑎𝑚𝑏𝑑𝑎] : 𝑆𝑤𝑖𝑓𝑡 🧩 𝐸𝑥𝑝𝑜𝑟𝑡 𝑈𝑠𝑒 𝑋𝑐𝑜𝑑𝑒 🎨 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝐴𝑔𝑒𝑛𝑡 𝑆𝑘𝑖𝑙𝑙
ios-newsletter.snappmobile.io
iOS Newsletter Issue 110
8 articles: Swift 6.4 Released, [Lambda] : Swift AWS Lambda Runtime 3.0.0 released, How to Export and Use Xcode 27's Agent Skills in Claude Code, and 5 more
121
Snapp iOS Weekly @snappiosweekly.bsky.social · 18/09/2026
The newsletter has an RSS feed now. Paste ios-newsletter.snappmobile.io into your reader — it'll find the feed on its own. Full issues, not just headlines. #iOSDev #Swift
ios-newsletter.snappmobile.io
Snapp iOS Weekly
Weekly curated iOS and Swift articles with editorial commentary — now with an RSS feed.
020
Snapp iOS Weekly @snappiosweekly.bsky.social · 17/09/2026
🚀 𝐵𝑢𝑖𝑙𝑑𝑖𝑛𝑔 𝑎 𝑃𝑙𝑎𝑛𝑡 𝐼𝑑𝑒𝑛𝑡𝑖𝑓𝑖𝑒𝑟 𝑤𝑖𝑡ℎ 𝐹𝑜𝑢𝑛𝑑𝑎𝑡𝑖𝑜𝑛 𝑀𝑜𝑑𝑒𝑙𝑠 by Mohammad Azam (@azamsharp.bsky.social) A plant identifier is a nice excuse to see Foundation Models image attachments doing something concrete: pass… #iOSDev youtu.be/VuKFMaVQiWg
youtu.be
Building a Plant Identifier with Foundation Models
A plant identifier is a nice excuse to see Foundation Models image attachments doing something concrete: pass an image, generate a structured plant name, then keep the conversation going with follow-up questions. The smart part is not re-analyzing the image every time; caching the identified plant keeps the UX from feeling like it is paying the same expensive bill again and again. There are rough edges, including model weirdness and real-device requirements on iOS 27, but that’s useful honesty. This is the kind of AI demo that maps cleanly to our own apps: identify once, ask many times, stream the answer when it gets longer.
021
Snapp iOS Weekly @snappiosweekly.bsky.social · 17/09/2026
📱 043 - 𝑅𝐶𝑆 by Lucas Fischer (@lucas.love) RCS has been easy to ignore if most of your world lives inside iMessage, but cross-platform messaging is finally less awful on iPhone. #iOSDev #Testing lucas.love/100/043
lucas.love
043 - RCS
RCS has been easy to ignore if most of your world lives inside iMessage, but cross-platform messaging is finally less awful on iPhone. The real-world test here — texting friends in Germany for a month and checking whether it stayed free — is more useful than another feature checklist. iOS 26 adding end-to-end encryption makes the story feel less like a grudging compatibility layer and more like something users may actually trust. Not glamorous, no, but our apps live in the same user expectations soup as Messages does.
130
Snapp iOS Weekly @snappiosweekly.bsky.social · 16/09/2026
🛠️ 𝑆𝑄𝐿𝑖𝑡𝑒𝐷𝑎𝑡𝑎 by PointFree.co (@pointfree.co) SQLiteData feels like SwiftData for teams who still want the database to be real. #iOSDev github.com/pointfreeco/...
github.com
SQLiteData
SQLiteData feels like SwiftData for teams who still want the database to be real. You get familiar wrappers like @Table, @FetchAll, and @FetchOne, but underneath it’s SQLite, GRDB, type-safe queries, and CloudKit sync without pretending schema design doesn’t exist. I like that tradeoff: a little more upfront database thinking, a lot more control when our apps grow past the toy phase.
030
Snapp iOS Weekly @snappiosweekly.bsky.social · 16/09/2026
📊 𝑆𝑤𝑖𝑓𝑡 𝑇𝑒𝑠𝑡𝑖𝑛𝑔 𝑒𝑥𝑝𝑙𝑎𝑖𝑛𝑒𝑑 𝑤𝑖𝑡ℎ 𝑐𝑜𝑑𝑒 𝑒𝑥𝑎𝑚𝑝𝑙𝑒𝑠 by Antoine van der Lee (@avanderlee.com) Swift Testing is settling in as the default path, and the migration story is getting clearer: @𝑇𝑒𝑠𝑡, #𝑒𝑥𝑝𝑒𝑐𝑡… #iOSDev #Testing #Performance www.avanderlee.com/swift-testin...
avanderlee.com
Swift Testing explained with code examples
Swift Testing is settling in as the default path, and the migration story is getting clearer: `@Test`, `#expect`, `#require`, parameterized tests, attachments, and exit tests where the platform allows them. The big win is not just fewer assertion names to remember; failure output is closer to the expression we actually wrote, which helps when CI is yelling and coffee has not kicked in yet. XCTest still has a place for UI automation and performance work, so no need for a dramatic rewrite. But for most unit tests in our codebase, the modern shape is hard to argue against.
020
Snapp iOS Weekly @snappiosweekly.bsky.social · 15/09/2026
⚡ 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 ℎ𝑎𝑠 𝑎 𝑛𝑎𝑡𝑖𝑣𝑒 𝑊𝑒𝑏𝑉𝑖𝑒𝑤 𝑖𝑛 𝑖𝑂𝑆 26 by Sarun W. The little 𝑈𝐼𝑉𝑖𝑒𝑤𝑅𝑒𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑎𝑏𝑙𝑒 WebView wrapper we’ve all copied between projects can start packing its bags. #iOSDev #SwiftUI #Concurrency sarunw.com/posts/swiftu...
sarunw.com
SwiftUI has a native WebView in iOS 26
The little `UIViewRepresentable` WebView wrapper we’ve all copied between projects can start packing its bags. iOS 26 gives SwiftUI a native `WebView`, and `WebPage` covers the bits real apps need: title, loading state, progress, history, secure-content state, and async JavaScript. The catch is small but easy to miss — import both SwiftUI and WebKit, because this arrives through a cross-import overlay. Keep the old wrapper for older deployment targets, sure, but new code gets pleasantly boring here.
030
Snapp iOS Weekly @snappiosweekly.bsky.social · 15/09/2026
🎨 𝐴𝑑𝑎𝑝𝑡𝑖𝑣𝑒 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝑡𝑜𝑜𝑙𝑏𝑎𝑟𝑠 𝑖𝑛 𝑖𝑂𝑆 27 by Natalia Panferova (@natpanferova.bsky.social) SwiftUI toolbars are getting a vocabulary for the thing we’ve all been faking: what matters when space runs out. #iOSDev #SwiftUI nilcoalescing.com/blog/Adaptiv...
nilcoalescing.com
Adaptive SwiftUI toolbars in iOS 27
SwiftUI toolbars are getting a vocabulary for the thing we’ve all been faking: what matters when space runs out. `visibilityPriority`, `ToolbarOverflowMenu`, pinned trailing items, and minimization behavior give us knobs instead of hoping the framework guesses our hierarchy of actions correctly. That matters more now with resizable windows, search taking over chrome, and devices that may change shape mid-session. Who doesn’t like deleting a weird custom “more” button and letting the system carry the overflow story properly?
042
Snapp iOS Weekly @snappiosweekly.bsky.social · 14/09/2026
🧩 𝑖𝑃ℎ𝑜𝑛𝑒 𝐷𝑢𝑜: 𝐹𝑖𝑟𝑠𝑡 𝐷𝑒𝑣𝑒𝑙𝑜𝑝𝑒𝑟 𝐺𝑜𝑜𝑑-𝑡𝑜-𝐾𝑛𝑜𝑤𝑠 by Jordan Morgan (@jordanmorgan10.bsky.social) The foldable iPhone conversation is no longer just gadget gossip; it’s a layout problem with a hinge in the middle of it. #iOSDev #Testing www.swiftjectivec.com/iphone-duo-f...
swiftjectivec.com
iPhone Duo: First Developer Good-to-Knows
The foldable iPhone conversation is no longer just gadget gossip; it’s a layout problem with a hinge in the middle of it. The useful bits here are practical: trust size classes over device assumptions, test asymmetric safe areas, let system containers manage bars, and don’t hide core features behind some cute folded pose. I like the warning baked into all of this — if our app only works because we guessed the shape of the device, we’re already late. Duo support sounds flashy, but most of the work is just honest adaptive design.
030
Snapp iOS Weekly @snappiosweekly.bsky.social · 14/09/2026
🌐 𝑊ℎ𝑎𝑡'𝑠 𝑛𝑒𝑤 𝑖𝑛 𝑆𝑤𝑖𝑓𝑡: 𝐴𝑢𝑔𝑢𝑠𝑡 2026 𝐸𝑑𝑖𝑡𝑖𝑜𝑛 by Simon Leeb & Dave Lester Swift’s August roundup is very much a “look how far outside Xcode this language is wandering now” moment. #iOSDev #Xcode www.swift.org/blog/whats-n...
swift.org
What's new in Swift: August 2026 Edition
Swift’s August roundup is very much a “look how far outside Xcode this language is wandering now” moment. Elementary and ElementaryUI push Swift deeper into web UI work, SwiftTUI brings state and animation ideas into terminal apps, and the Windows story keeps getting less theoretical. If our mental model of Swift is still mostly “the language we use for iOS screens,” this digest is a useful shove. The ecosystem is getting wider, messier, and more interesting — as it should.
010
Snapp iOS Weekly @snappiosweekly.bsky.social · 11/09/2026
📢 𝗜𝘀𝘀𝘂𝗲 𝟭𝟬𝟵 𝗶𝘀 𝗼𝘂𝘁! Featuring: 🌐 𝑊ℎ𝑎𝑡'𝑠 𝑆𝑤𝑖𝑓𝑡 🧩 𝐼𝑃ℎ𝑜𝑛𝑒 𝐷𝑢𝑜 🎨 𝐴𝑑𝑎𝑝𝑡𝑖𝑣𝑒 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 ⚡ 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 ℎ𝑎𝑠 📊 𝑆𝑤𝑖𝑓𝑡 𝑇𝑒𝑠𝑡𝑖𝑛𝑔 🛠️ 𝑆𝑄𝐿𝑖𝑡𝑒𝐷𝑎𝑡𝑎 📱 043 🚀 𝐵𝑢𝑖𝑙𝑑𝑖𝑛𝑔 𝑃𝑙𝑎𝑛𝑡 #Swift #iOSDev ios-newsletter.snappmobile.io/issues/2026-...
ios-newsletter.snappmobile.io
iOS Newsletter Issue 109
8 articles: What's new in Swift: August 2026 Edition, iPhone Duo: First Developer Good-to-Knows, Adaptive SwiftUI toolbars in iOS 27, and 5 more
120
Snapp iOS Weekly @snappiosweekly.bsky.social · 10/09/2026
⚡ 𝑁𝑜𝑏𝑜𝑑𝑦𝑊ℎ𝑜 by NobodyWho (@nobodywhooo.bsky.social) NobodyWho is pitching local AI inference across devices, with text, vision, speech-to-text, and text-to-speech models loaded from places like Hugging Face and called… #iOSDev www.nobodywho.ai
nobodywho.ai
NobodyWho
NobodyWho is pitching local AI inference across devices, with text, vision, speech-to-text, and text-to-speech models loaded from places like Hugging Face and called from Swift, React Native, Kotlin, Dart, Python, and more. The Swift sample is refreshingly direct: load a `GGUF` model, ask it something, await the completed response. For mobile teams, the appeal is obvious — private, offline-capable AI features without sending every user interaction across the network. Of course we still need to care about model size, latency, and battery, but this is the kind of tool that makes local-first AI feel less like a research project.
030
Snapp iOS Weekly @snappiosweekly.bsky.social · 10/09/2026
🔧 093 - 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝑖𝑛 𝐹𝐶𝑃 by Lucas Fischer (@lucas.love) SwiftUI views rendered as Final Cut Pro effects is the sort of sentence that makes you stop and check you read it right. #iOSDev #SwiftUI lucas.love/100/093
lucas.love
093 - SwiftUI in FCP
SwiftUI views rendered as Final Cut Pro effects is the sort of sentence that makes you stop and check you read it right. Using [SwiftUIFX](https://github.com/finnvoor/SwiftUIFX), the experiment builds SwiftUI components and renders them frame by frame onto video footage, which is not the usual plugin path most of us have in our heads. It’s scrappy and exploratory in the best way. Even if our day job never touches Final Cut Pro, seeing SwiftUI escape the app window is a healthy reminder that our UI tools are more portable than we tend to assume.
031
Snapp iOS Weekly @snappiosweekly.bsky.social · 09/09/2026
🧠 𝐴𝑟𝑒𝑎 𝑐ℎ𝑎𝑟𝑡 𝑤𝑖𝑡ℎ 𝑎 𝑑𝑖𝑚𝑚𝑖𝑛𝑔 𝑙𝑎𝑦𝑒𝑟 𝑢𝑝 𝑡𝑜 𝑡ℎ𝑒 𝑐𝑢𝑟𝑟𝑒𝑛𝑡 𝑝𝑜𝑖𝑛𝑡 𝑖𝑛 𝑡𝑖𝑚𝑒 by Natalia Panferova (@natpanferova.bsky.social) A nice little Swift Charts recipe inspired by the iOS Weather UV chart: gradient area, matching line, current-time… #iOSDev nilcoalescing.com/blog/AreaCha...
nilcoalescing.com
Area chart with a dimming layer up to the current point in time
A nice little Swift Charts recipe inspired by the iOS Weather UV chart: gradient area, matching line, current-time marker, and a dimming layer over the part of the day that has already passed. The technique is useful because it’s not just prettier data, it tells the user what’s behind them and what’s still ahead at a glance. Our apps often need exactly this kind of visual hint, the small layer that makes a chart feel alive instead of pasted in. Bonus points for keeping accessibility in the conversation when the area and line represent the same data.
021
Snapp iOS Weekly @snappiosweekly.bsky.social · 09/09/2026
💡 𝐵𝑢𝑖𝑙𝑑𝑖𝑛𝑔 𝑎 𝑠𝑢𝑛𝑏𝑢𝑟𝑠𝑡 𝑑𝑖𝑎𝑔𝑟𝑎𝑚 𝑖𝑛 𝑆𝑤𝑖𝑓𝑡 𝐶ℎ𝑎𝑟𝑡𝑠 by Matthaus Woolard (@hishnash.bsky.social) Swift Charts can build a proper sunburst diagram, but the fun is in the details: 𝑆𝑒𝑐𝑡𝑜𝑟𝑀𝑎𝑟𝑘 rings, radius ratios, angular insets, grouped data layout… #iOSDev nilcoalescing.com/blog/Buildin...
nilcoalescing.com
Building a sunburst diagram in Swift Charts
Swift Charts can build a proper sunburst diagram, but the fun is in the details: `SectorMark` rings, radius ratios, angular insets, grouped data layout, and accessibility labels that don’t get treated as an afterthought. The result is a multi-level donut chart where the outer rings still line up with their parent categories, which sounds simple until you try to fake it by hand. Who doesn’t like a chart that looks custom without becoming a pile of custom drawing code? This is a good reminder that Charts has more range than the usual bar-and-line dashboard screenshots suggest.
042
Snapp iOS Weekly @snappiosweekly.bsky.social · 08/09/2026
🚀 𝑀𝑎𝑘𝑖𝑛𝑔 𝑎𝑝𝑝 𝑒𝑛𝑡𝑖𝑡𝑖𝑒𝑠 𝑎𝑣𝑎𝑖𝑙𝑎𝑏𝑙𝑒 𝑖𝑛 𝑆𝑝𝑜𝑡𝑙𝑖𝑔ℎ𝑡 by Apple Documentation Apple’s guide lays out the official path for getting AppEntity types into Spotlight, with 𝐼𝑛𝑑𝑒𝑥𝑒𝑑𝐸𝑛𝑡𝑖𝑡𝑦 doing a lot of the connective work. #iOSDev #Apple developer.apple.com/documentatio...
developer.apple.com
Making app entities available in Spotlight
Apple’s guide lays out the official path for getting AppEntity types into Spotlight, with `IndexedEntity` doing a lot of the connective work. The big bit for our codebase is that Spotlight is no longer just a bag of searchable strings; it can carry structured app entities that Siri and other system experiences can reason about. That means the boring indexing layer suddenly matters a lot more. If our app has user-created objects, saved places, documents, workouts, recipes, whatever, this is the place to start making them visible to the system.
000
Snapp iOS Weekly @snappiosweekly.bsky.social · 08/09/2026
🎨 𝑇𝑒𝑎𝑐ℎ𝑖𝑛𝑔 𝑆𝑖𝑟𝑖 𝑡𝑜 𝑡𝑎𝑙𝑘 𝑎𝑏𝑜𝑢𝑡 𝑦𝑜𝑢𝑟 𝑓𝑎𝑣𝑜𝑟𝑖𝑡𝑒 𝑤𝑎𝑙𝑘𝑠 𝑖𝑛 𝑊𝑎𝑙𝑘 𝑀𝑎𝑡𝑒 by Emre Degirmenci (@emredeg.bsky.social) A practical walk through making Siri understand app data, not just launch a shortcut and wave vaguely at the app. #iOSDev #Apple emredegirmenci.substack.com/p/ios-27-app...
emredegirmenci.substack.com
Teaching Siri to talk about your favorite walks in Walk Mate
A practical walk through making Siri understand app data, not just launch a shortcut and wave vaguely at the app. Walk Mate’s favorite routes become App Entities with readable properties, Spotlight indexing, Shortcuts search, and a Maps handoff, which is exactly the kind of plumbing our apps need if we want Apple Intelligence to feel useful instead of decorative. I like how grounded this is: one saved walk, one name Siri can say, one route that opens where the user expects. App Intents can get abstract fast; this keeps the work close to something a person would actually ask for.
001
Snapp iOS Weekly @snappiosweekly.bsky.social · 07/09/2026
📱 𝐵𝑢𝑖𝑙𝑑𝑖𝑛𝑔 𝐴𝐼 𝑓𝑒𝑎𝑡𝑢𝑟𝑒𝑠 𝑢𝑠𝑖𝑛𝑔 𝐹𝑜𝑢𝑛𝑑𝑎𝑡𝑖𝑜𝑛 𝑀𝑜𝑑𝑒𝑙𝑠. 𝑀𝑢𝑙𝑡𝑖𝑚𝑜𝑑𝑎𝑙 𝑖𝑛𝑝𝑢𝑡. by Majid Jabrayilov (@mecid.bsky.social) Foundation Models get much more real once the prompt can include an image, and the plate-scanner example makes… #iOSDev swiftwithmajid.com/2026/09/01/b...
swiftwithmajid.com
Building AI features using Foundation Models. Multimodal input.
Foundation Models get much more real once the prompt can include an image, and the plate-scanner example makes the point without overcooking it. Define a `Generable` result type, pass instructions plus an `Attachment` into `LanguageModelSession`, and get structured output back that the UI can actually use. No giant cloud pipeline, no “AI strategy” meeting, just a feature-sized loop: image in, typed result out. That’s the kind of AI API surface I want in our apps — small enough to trust, useful enough to ship.
010
Snapp iOS Weekly @snappiosweekly.bsky.social · 07/09/2026
🌐 𝑆𝑤𝑖𝑓𝑡 𝑓𝑜𝑟 𝑊𝑎𝑠𝑚 𝐴𝑢𝑔𝑢𝑠𝑡 2026 𝑈𝑝𝑑𝑎𝑡𝑒𝑠 by Max Desiatov Swift for WebAssembly had one of those months where the changelog looks small until you notice the shape of it: WasmKit running a WASI guest and GDB stub on an ESP32… #iOSDev #WebAssembly forums.swift.org/t/swift-for-...
forums.swift.org
Swift for Wasm August 2026 Updates
Swift for WebAssembly had one of those months where the changelog looks small until you notice the shape of it: WasmKit running a WASI guest and GDB stub on an ESP32, BridgeJS getting cleaner module imports and generic imported functions, ElementaryUI tightening up its SwiftPM/Vite story. That’s not “hello world in the browser” territory anymore. It’s Swift being pushed into edge workers, embedded targets, and frontend experiments with fewer apologies. Still rough in places, sure, but if our idea of Swift stops at apps and server binaries, we’re missing where the interesting pressure is building.
021
Snapp iOS Weekly @snappiosweekly.bsky.social · 04/09/2026
📢 𝗜𝘀𝘀𝘂𝗲 𝟭𝟬𝟴 𝗶𝘀 𝗼𝘂𝘁! Featuring: 🌐 𝑆𝑤𝑖𝑓𝑡 𝑊𝑎𝑠𝑚 📱 𝐵𝑢𝑖𝑙𝑑𝑖𝑛𝑔 𝐴𝐼 🎨 𝑇𝑒𝑎𝑐ℎ𝑖𝑛𝑔 𝑆𝑖𝑟𝑖 🚀 𝑀𝑎𝑘𝑖𝑛𝑔 𝑎𝑝𝑝 💡 𝐵𝑢𝑖𝑙𝑑𝑖𝑛𝑔 𝑠𝑢𝑛𝑏𝑢𝑟𝑠𝑡 🧠 𝐴𝑟𝑒𝑎 𝑐ℎ𝑎𝑟𝑡 🔧 093 ⚡ 𝑁𝑜𝑏𝑜𝑑𝑦𝑊ℎ𝑜 #Swift #iOSDev ios-newsletter.snappmobile.io/issues/2026-...
ios-newsletter.snappmobile.io
iOS Newsletter Issue 108
8 articles: Swift for Wasm August 2026 Updates, Building AI features using Foundation Models. Multimodal input., Teaching Siri to talk about your favorite walks in Walk Mate, and 5 more
142
Snapp iOS Weekly @snappiosweekly.bsky.social · 03/09/2026
🧠 𝑋𝑐𝑜𝑑𝑒 𝐾𝑒𝑦 𝐵𝑖𝑛𝑑𝑖𝑛𝑔𝑠 𝑡𝑜 𝑀𝑎𝑘𝑒 𝑅𝑒𝑓𝑎𝑐𝑡𝑜𝑟𝑖𝑛𝑔 𝐿𝑒𝑠𝑠 𝑃𝑎𝑖𝑛𝑓𝑢𝑙 by Jon Reid (@qualitycoding.org) Xcode refactoring is unreliable enough that digging through its menus trains us to stop trying. #iOSDev #Xcode qualitycoding.org/xcode-key-bi...
qualitycoding.org
Xcode Key Bindings to Make Refactoring Less Painful
Xcode refactoring is unreliable enough that digging through its menus trains us to stop trying. Binding Rename, Extract All Occurrences, and Extract to Method to memorable shortcuts flips that cost: try instantly, move on instantly if Xcode says no, and stay in flow on the rare happy path when it works.
000
Snapp iOS Weekly @snappiosweekly.bsky.social · 03/09/2026
💡 𝐵𝑢𝑖𝑙𝑑𝑖𝑛𝑔 𝑎𝑛 𝑎𝑐𝑐𝑒𝑠𝑠𝑖𝑏𝑙𝑒 𝑐𝑎𝑙𝑒𝑛𝑑𝑎𝑟 𝑐ℎ𝑎𝑟𝑡 𝑤𝑖𝑡ℎ 𝑆𝑤𝑖𝑓𝑡 𝐶ℎ𝑎𝑟𝑡𝑠 by Matthaus Woolard (@hishnash.bsky.social) A calendar heat map looks simple until dates from later weeks form a staircase and VoiceOver groups every Monday into one inaccessible column. #iOSDev nilcoalescing.com/blog/Buildin...
nilcoalescing.com
Building an accessible calendar chart with Swift Charts
A calendar heat map looks simple until dates from later weeks form a staircase and VoiceOver groups every Monday into one inaccessible column. Normalizing weekdays into a reference week fixes the geometry; replacing the plot’s accessibility children with a matching synthetic grid restores day-by-day navigation and month headings without throwing away Swift Charts’ date-based model.
031
Snapp iOS Weekly @snappiosweekly.bsky.social · 02/09/2026
🚀 𝑃ℎ𝑜𝑡𝑜 𝐸𝑥𝑡𝑒𝑛𝑠𝑖𝑜𝑛𝑠 by Sam Davies Photo Editing extensions are a neat example of designing for non-destructive work: render a display-sized preview, persist the recipe as 𝑃𝐻𝐴𝑑𝑗𝑢𝑠𝑡𝑚𝑒𝑛𝑡𝐷𝑎𝑡𝑎, then apply… #iOSDev www.objc.io/issues/21-ca...
objc.io
Photo Extensions
Photo Editing extensions are a neat example of designing for non-destructive work: render a display-sized preview, persist the recipe as `PHAdjustmentData`, then apply it to the full-resolution asset only when the user commits. The old APIs show their age, but the constraints have not—share code carefully with the container app, avoid wasteful image buffers, and assume memory pressure will expose every lazy choice.
000
Snapp iOS Weekly @snappiosweekly.bsky.social · 01/09/2026
⚡ 𝐵𝑎𝑐𝑘𝑔𝑟𝑜𝑢𝑛𝑑 𝑡𝑎𝑠𝑘𝑠 𝑖𝑛 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 by Majid Jabrayilov (@mecid.bsky.social) SwiftUI’s 𝑏𝑎𝑐𝑘𝑔𝑟𝑜𝑢𝑛𝑑𝑇𝑎𝑠𝑘 modifier makes 𝐵𝐺𝑇𝑎𝑠𝑘𝑆𝑐ℎ𝑒𝑑𝑢𝑙𝑒𝑟 feel far less bolted on, especially now that handlers can use… #iOSDev #SwiftUI #Concurrency swiftwithmajid.com/2022/07/06/b...
swiftwithmajid.com
Background tasks in SwiftUI
SwiftUI’s `backgroundTask` modifier makes `BGTaskScheduler` feel far less bolted on, especially now that handlers can use async/await and cooperative cancellation. The system still decides when work runs, though, so schedule from lifecycle transitions, use background `URLSession` for long transfers, and learn the debugger commands that simulate launch and expiration—or enjoy waiting indefinitely for iOS to cooperate.
010
Snapp iOS Weekly @snappiosweekly.bsky.social · 01/09/2026
🎨 𝐴𝑝𝑝 𝐼𝑛𝑡𝑒𝑛𝑡𝑠 𝑓𝑜𝑟 𝑖𝑂𝑆 27: 𝑇ℎ𝑒 𝐼𝑛𝑑𝑖𝑒 𝑃𝑙𝑎𝑦𝑏𝑜𝑜𝑘 𝑓𝑜𝑟 𝑡ℎ𝑒 𝑁𝑒𝑤 𝑆𝑖𝑟𝑖 𝑎𝑛𝑑 𝑆𝑝𝑜𝑡𝑙𝑖𝑔ℎ𝑡 by Aurélien Weiss App Intents are not some magical replacement for ASO, and treating them that way misses the point. #iOSDev www.applyra.io/blog/app-int...
applyra.io
App Intents for iOS 27: The Indie Playbook for the New Siri and Spotlight
App Intents are not some magical replacement for ASO, and treating them that way misses the point. For most indie apps, one open intent, one search intent, and one create intent behind an `AppShortcutsProvider` is enough to make the app genuinely usable from Siri, Spotlight, and Shortcuts—small work with a surprisingly broad system footprint.
010
Snapp iOS Weekly @snappiosweekly.bsky.social · 31/08/2026
📱 𝑅𝑢𝑛 𝐶𝑢𝑠𝑡𝑜𝑚 𝑀𝑜𝑑𝑒𝑙𝑠 𝑂𝑛 𝐷𝑒𝑣𝑖𝑐𝑒 𝑊𝑖𝑡ℎ 𝐶𝑜𝑟𝑒 𝐴𝐼 by Trevor Whittingham Core AI fills the awkward space between Apple’s Foundation Models and traditional Core ML: bring a task-specific model, convert it to .𝑎𝑖𝑚𝑜𝑑𝑒𝑙, and keep inference… #iOSDev #Apple www.theswift.dev/posts/run-cu...
theswift.dev
Run Custom Models On Device With Core AI
Core AI fills the awkward space between Apple’s Foundation Models and traditional Core ML: bring a task-specific model, convert it to `.aimodel`, and keep inference on device. The architecture advice is the real keeper—compose small vision and language models, hide tensor plumbing behind narrow types, and treat download plus first-run specialization as product states rather than surprising the user with a spinner.
021
Snapp iOS Weekly @snappiosweekly.bsky.social · 31/08/2026
🧩 𝑆𝑤𝑖𝑓𝑡'𝑠 𝑁𝑒𝑤 𝐷𝑜𝑐𝑢𝑚𝑒𝑛𝑡𝑎𝑡𝑖𝑜𝑛 𝑆𝑖𝑡𝑒 by Joseph Heck Swift finally has one hosted home for The Swift Programming Language, standard library APIs, Swift Testing, toolchain material, and platform guidance, built nightly… #iOSDev #Testing forums.swift.org/t/swifts-new...
forums.swift.org
Swift's New Documentation Site
Swift finally has one hosted home for The Swift Programming Language, standard library APIs, Swift Testing, toolchain material, and platform guidance, built nightly with DocC. The useful bit is the split between `latest` release documentation and `main` development docs, with real versioning and a switcher still being worked out; Foundation is notably missing for now.
041
Snapp iOS Weekly @snappiosweekly.bsky.social · 28/08/2026
📢 𝗜𝘀𝘀𝘂𝗲 𝟭𝟬𝟳 𝗶𝘀 𝗼𝘂𝘁! This week's lineup: 🧩 𝑆𝑤𝑖𝑓𝑡'𝑠 𝐷𝑜𝑐𝑢𝑚𝑒𝑛𝑡𝑎𝑡𝑖𝑜𝑛 𝑆𝑖𝑡𝑒 📱 𝑅𝑢𝑛 𝐶𝑢𝑠𝑡𝑜𝑚 𝑀𝑜𝑑𝑒𝑙𝑠 𝐷𝑒𝑣𝑖𝑐𝑒 𝐶𝑜𝑟𝑒 𝐴𝐼 🎨 𝐴𝑝𝑝 𝐼𝑛𝑡𝑒𝑛𝑡𝑠 𝑖𝑂𝑆 27 ⚡ 𝐵𝑎𝑐𝑘𝑔𝑟𝑜𝑢𝑛𝑑 𝑡𝑎𝑠𝑘𝑠 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 🚀 𝑃ℎ𝑜𝑡𝑜 𝐸𝑥𝑡𝑒𝑛𝑠𝑖𝑜𝑛𝑠
ios-newsletter.snappmobile.io
iOS Newsletter Issue 107
8 articles: Swift's New Documentation Site, Run Custom Models On Device With Core AI, App Intents for iOS 27: The Indie Playbook for the New Siri and Spotlight, and 5 more
100
Snapp iOS Weekly @snappiosweekly.bsky.social · 27/08/2026
💡 𝐹𝑊𝐶 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝑆𝑘𝑖𝑙𝑙𝑠 by Florian Schweizer This focused Cursor Agent Skill packages modern SwiftUI guidance for implementing and reviewing Liquid Glass with native iOS 26 APIs. #iOSDev #SwiftUI github.com/FloWritesCod...
github.com
FWC SwiftUI Skills
This focused Cursor Agent Skill packages modern SwiftUI guidance for implementing and reviewing Liquid Glass with native iOS 26 APIs. Installation is straightforward through `npx skills add`, and the narrow scope is the selling point: one well-maintained skill with concrete pitfalls beats a giant prompt that pretends to know every corner of SwiftUI.
000
Snapp iOS Weekly @snappiosweekly.bsky.social · 27/08/2026
🧩 𝑈𝑛𝑖𝑡 𝑇𝑒𝑠𝑡𝑖𝑛𝑔 𝑁𝑎𝑣𝑖𝑔𝑎𝑡𝑖𝑜𝑛 𝐿𝑜𝑔𝑖𝑐 𝑖𝑛 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 by Azam Sharp (@azamsharp.bsky.social) Navigation stops being “just UI” the moment the destination depends on role, account state, or permissions. #iOSDev #SwiftUI #Testing azamsharp.com/2026/08/13/u...
azamsharp.com
Unit Testing Navigation Logic in SwiftUI
Navigation stops being “just UI” the moment the destination depends on role, account state, or permissions. Representing destinations as `Route` values and moving those decisions into a router—or a feature coordinator once the router starts becoming a junk drawer—turns them into fast Swift Testing assertions instead of brittle UI tests. That seam is small, but it pays off every time a product rule changes.
011
Snapp iOS Weekly @snappiosweekly.bsky.social · 26/08/2026
🚀 𝑅𝑒𝑠𝑝𝑜𝑛𝑑𝑖𝑛𝑔 𝑡𝑜 𝑔𝑒𝑜𝑚𝑒𝑡𝑟𝑦 𝑐ℎ𝑎𝑛𝑔𝑒𝑠 𝑖𝑛 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 by Natalia Panferova (@natpanferova.bsky.social) Resizable iPad windows and iPhone apps running on larger surfaces have made device-based layout assumptions properly obsolete. #iOSDev #SwiftUI nilcoalescing.com/blog/Respond...
nilcoalescing.com
Responding to geometry changes in SwiftUI
Resizable iPad windows and iPhone apps running on larger surfaces have made device-based layout assumptions properly obsolete. `onGeometryChange()` lets a view derive a small `Equatable` value—say, whether a card should switch orientation—from the space it actually receives, and only updates state when that value changes. Return the smallest signal you need and keep it independent from the measured layout, or you’ll build a feedback loop that thrashes during resizing.
021
Snapp iOS Weekly @snappiosweekly.bsky.social · 26/08/2026
🎨 𝑀𝑒𝑎𝑠𝑢𝑟𝑒 𝐴𝑝𝑝 𝐿𝑎𝑢𝑛𝑐ℎ 𝑇𝑖𝑚𝑒 𝑤𝑖𝑡ℎ 𝐼𝑛𝑠𝑡𝑟𝑢𝑚𝑒𝑛𝑡𝑠 by Mark Szymczyk If app launch feels slow, stop poking at random initialization code and measure it. #iOSDev swiftdevjournal.com/posts/measur...
swiftdevjournal.com
Measure App Launch Time with Instruments
If app launch feels slow, stop poking at random initialization code and measure it. Instruments’ App Launch template and the App Lifecycle pane show each launch phase with its duration, giving us a concrete place to start instead of another round of “it seems faster on my phone.”
010