Just released SwiftUI Layout & Resizability, a new Scroll for SwiftFairy, our Mac app that gives coding agents in-the-loop code review while optimizing token usage. If you already have any other Scroll, you can save when picking this one up. tools.nilcoalescing.com/swiftfairy/p... #iOSDev #MCP
Natalia Panferova
@natpanferova.bsky.social
Software Engineer | iOS | macOS | Swift | SwiftUI | Previously SwiftUI at Apple | Author of books for Swift developers: https://books.nilcoalescing.com
We’ve just released a new Scroll for SwiftFairy that focuses on SwiftUI layout and resizability! It covers over 100 issues your AI coding agent can check for to make sure your app is ready for iPhone Duo and resizable windows in general: tools.nilcoalescing.com/swiftfairy/s... #iOSDev #SwiftUI
SwiftFairy - SwiftUI Layout & Resizability
Build interfaces that adapt to any window size, device, and text size by sizing views flexibly, structuring scrolling content correctly, and choosing the right SwiftUI layout API for each job.
tools.nilcoalescing.com
Configure a SwiftUI app to schedule and handle a background fetch task using the Background Tasks framework and the backgroundTask(_:action:) SwiftUI modifier: nilcoalescing.com/blog/Schedul... #iOSDev #SwiftUI
Scheduling and handling background app refresh in SwiftUI
Configure a SwiftUI app to schedule and handle a background fetch task using the Background Tasks framework and the backgroundTask(_:action:) SwiftUI modifier.
nilcoalescing.com
Sheets on iPhone Duo are more flexible than you're used to on other devices and @natpanferova.bsky.social tells you all about it. nilcoalescing.com/blog/Present...
Customize the appearance of the macOS window toolbar in SwiftUI using scene and view modifiers to control its layout, title visibility, and background: nilcoalescing.com/blog/AGuideT... #macOSDev #SwiftUI
A guide to macOS window toolbar styles in SwiftUI
Customize the appearance of the macOS window toolbar in SwiftUI using scene and view modifiers to control its layout, title visibility, and background.
nilcoalescing.com
📢 𝗜𝘀𝘀𝘂𝗲 𝟭𝟭𝟯 𝗶𝘀 𝗼𝘂𝘁! This week's lineup: 🌐 𝑊ℎ𝑎𝑡'𝑠 𝑛𝑒𝑤 𝑖𝑛 𝑆𝑤𝑖𝑓𝑡: 𝑆𝑒𝑝𝑡𝑒𝑚𝑏𝑒𝑟 2026 𝐸𝑑𝑖𝑡𝑖𝑜𝑛 🔶 𝐴𝑑𝑣𝑎𝑛𝑐𝑒𝑑 𝑚𝑎𝑐𝑟𝑜 𝑡𝑒𝑐ℎ𝑛𝑖𝑞𝑢𝑒 #1: 𝑆𝑡𝑎𝑡𝑖𝑐 𝑡𝑦𝑝𝑒 𝑖𝑛𝑓𝑜𝑟𝑚𝑎𝑡𝑖𝑜𝑛
Snapp iOS Weekly Issue 113
8 articles: What's new in Swift: September 2026 Edition, Advanced macro technique #1: Static type information, Introducing the Server Side Cloud Swift SDK, and 5 more
ios-newsletter.snappmobile.io
SwiftLee Weekly Issue 344 was sent to 30,841 subscribers with content from @danielsaidi.bsky.social, @fatbobman.bsky.social, @jordanmorgan10.bsky.social, @natpanferova.bsky.social, @peterfriese.dev, @rocketsim.app swiftlee-weekly.com/issues/344/
Review automatic SwiftUI sheet adaptations on iPhone Duo and configure sheet placement and toolbar arrangement to suit the content being presented: nilcoalescing.com/blog/Present... #iOSDev #SwiftUI
Presenting SwiftUI sheets on iPhone Duo
Review automatic SwiftUI sheet adaptations on iPhone Duo and configure sheet placement and toolbar arrangement to suit the content being presented.
nilcoalescing.com
Use SwiftUI transaction values to identify updates made by wrapped UITextView and NSTextView editors, preventing the same values from being applied again when SwiftUI sends them back: nilcoalescing.com/blog/Trackin... #iOSDev #macOSDev #SwiftUI
Tracking value sources to prevent recursive SwiftUI updates
Use SwiftUI transaction values to identify updates made by wrapped UITextView and NSTextView editors, preventing the same values from being applied again when SwiftUI sends them back.
nilcoalescing.com
If your app presents sheets, it's worth checking how they look on iPhone Duo. My new post covers SwiftUI's automatic adaptations, sheet placement, toolbar customization, and a workaround for a beta layout issue: nilcoalescing.com/blog/Present... #iOSDev #SwiftUI
Presenting SwiftUI sheets on iPhone Duo
Review automatic SwiftUI sheet adaptations on iPhone Duo and configure sheet placement and toolbar arrangement to suit the content being presented.
nilcoalescing.com
Just pushed an update to SwiftFairy 🧚, our native macOS MCP server that reviews your agent’s code locally for correctness, performance, and maintainability. Large reviews are faster in 2026.10.1: agents can now send file paths instead of source code. tools.nilcoalescing.com/swiftfairy/ #iOSDev #AI
SwiftFairy
A macOS app that locally reviews your agent's Swift and SwiftUI code and provides guidance to fix issues.
tools.nilcoalescing.com
Huge collection of articles - various aspects of AI in development, security topics, Q&A transcripts and some useful Swift and SwiftUI tips and tricks. Pick something for this weekend! appletreats.substack.com/p/weekend-go...
Weekend good reads for Apple developers #2026/40
AI, EU, MCP and other acronyms
appletreats.substack.com
Dive into how static and dynamic dispatch work in Swift, how they affect performance, and how to control method resolution to write faster, more efficient code: nilcoalescing.com/blog/MethodD... #SwiftLang
Method dispatch mechanisms in Swift: static and dynamic dispatch
Dive into how static and dynamic dispatch work in Swift, how they affect performance, and how to control method resolution to write faster, more efficient code.
nilcoalescing.com
SwiftLee Weekly Issue 343 was sent to 30,911 subscribers with content from @jordanmorgan10.bsky.social, @natpanferova.bsky.social, @rocketsim.app, Anton Gubarenko, Artem Novichkov swiftlee-weekly.com/issues/343/
🎨 𝐶𝑜𝑛𝑓𝑖𝑔𝑢𝑟𝑖𝑛𝑔 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝑡𝑜𝑜𝑙𝑏𝑎𝑟𝑠 𝑜𝑛 𝑖𝑃ℎ𝑜𝑛𝑒 𝐷𝑢𝑜 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...
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.”
nilcoalescing.com
Fatbobman’s Swift Weekly #155 is now available! The Month iPhone Duo Gives Developers 🔍 Running iOS Background Tasks Reliably 🧠 Dissecting Xcode 27’s mcpbridge 🌞 iPhone Duo & AnyOS 27 Adaptation more... weekly.fatbobman.com/p/fatbobman...
Fatbobman's Swift Weekly #155
The Month iPhone Duo Gives Developers
weekly.fatbobman.com
The September issue of the Nil Coalescing newsletter is out 📬 It includes an introduction to SwiftFairy, our Mac app that helps coding agents review Swift and SwiftUI code, plus iOSDevUK highlights and this month's articles: nilcoalescing.com/newsletter/2...
Nil Coalescing - Nil Coalescing Newsletter – September 2026
We've released SwiftFairy, our new Mac app that helps coding agents review Swift and SwiftUI code. This month also took us to Wales for iOSDevUK, where Matt presented on interactive Swift Charts and I...
nilcoalescing.com
SwiftFairy 2026.9.2 is out. Large audits now take seconds, not minutes, and use far less of your agent's context. The video shows a pattern I've noticed agents often write: Binding(get:set:) in a view body, and the labeled subscript SwiftFairy steers them to. tools.nilcoalescing.com/swiftfairy
Most heatmaps use rectangular grids, but with Swift Charts we can use PointPlots to arrange cells with alternative shapes. In my new post, we explore hexagonal cells for spatial data. nilcoalescing.com/blog/Visuali... #iOSDev #SwiftUI #SwiftLang
Visualising data with a hexagonal heatmap in Swift Charts
Explore alternatives to rectangular heatmap cells for visualising spatial data along coastlines and irregular boundaries.
nilcoalescing.com
SwiftFairy brings our Swift and SwiftUI expertise to your coding agent, running static analysis on your Mac over MCP and returning targeted guidance for each flagged issue: nilcoalescing.com/blog/Introdu... #iOSDev #SwiftUI #SwiftLang
Introducing SwiftFairy: Swift and SwiftUI code reviews for coding agents
SwiftFairy brings our Swift and SwiftUI expertise to your coding agent, running static analysis on your Mac over MCP and returning targeted guidance for each flagged issue.
nilcoalescing.com
If, like me, you were wondering how to show the slider to control the hinge angle in the iPhone Duo simulator in Xcode 27.1, we need to hold the Option key to reveal it 🙂
SwiftFairy 2026.9.1 is out! 🧚 SDK and project lookups are more reliable, and the complexity limits are much higher, so those huge views we all have get a proper review rather than just "too complex, please break it up". Release notes: tools.nilcoalescing.com/swiftfairy/r... #iOSDev #SwiftUI
We've had many questions about how SwiftFairy, our new code review app for Swift and SwiftUI, compares to skills and fits into an agent workflow. I've written a post explaining how agents work with it and why it's more reliable: nilcoalescing.com/blog/Introdu... #SwiftUI #AICoding #iOSDev
Introducing SwiftFairy: Swift and SwiftUI code reviews for coding agents
SwiftFairy brings our Swift and SwiftUI expertise to your coding agent, running static analysis on your Mac over MCP and returning targeted guidance for each flagged issue.
nilcoalescing.com
Control how SwiftUI presents toolbar items and tabs on iPhone Duo with the new iOS 27.1 APIs, from arranging custom labels to prioritizing actions when space is limited: nilcoalescing.com/blog/Configu... #iOSDev #SwiftUI
Configuring SwiftUI toolbars on iPhone Duo
Control how SwiftUI presents toolbar items and tabs on iPhone Duo with the new iOS 27.1 APIs, from arranging custom labels to prioritizing actions when space is limited.
nilcoalescing.com
I’ve been trying to turn our articles and books into skills, but agents struggle to navigate them and forget rules they just read. So we ended up building SwiftFairy to detect issues and attach guidance inline, so agents no longer need to recall it all. tools.nilcoalescing.com/swiftfairy/ #iOSDev
SwiftFairy
A macOS app that locally reviews your agent's Swift and SwiftUI code and provides guidance to fix issues.
tools.nilcoalescing.com
We've released a new developer tool! SwiftFairy is a native Mac app that reviews your AI agent's Swift and SwiftUI code locally on device and provides focused guidance and improvement suggestions. Excited for you to try it out! tools.nilcoalescing.com/swiftfairy #iOSDev #SwiftLang #SwiftUI
SwiftFairy
A macOS app that locally reviews your agent's Swift and SwiftUI code and provides guidance to fix issues.
tools.nilcoalescing.com
Use the AttributedString API to build a reusable Text initializer in SwiftUI that applies a distinct font to the unit component of a formatted measurement: nilcoalescing.com/blog/Styling... #iOSDev #SwiftUI
Styling measurement unit fonts in SwiftUI
Use the AttributedString API to build a reusable Text initializer that applies a distinct font to the unit component of a formatted measurement.
nilcoalescing.com
Sometimes we want a gradient to span the whole plot rather than restart within each mark. In Swift Charts, alignsMarkStylesWithPlotArea(true) gives marks a shared gradient alignment. Learn more in our book, Swift Charts Beyond the Basics: books.nilcoalescing.com/swift-charts... #iOSDev #SwiftUI
"The SwiftUI Way" has been updated with expanded guidance on SwiftUI data flow, view updates, and performance, including changes introduced in Xcode 27: nilcoalescing.com/blog/TheSwif... #iOSDev #SwiftUI
"The SwiftUI Way" book update: expanded guidance on data flow and performance
'The SwiftUI Way' has been updated with expanded guidance on SwiftUI data flow, view updates, and performance, including changes introduced in Xcode 27.
nilcoalescing.com
📊 𝐷𝑖𝑎𝑔𝑛𝑜𝑠𝑖𝑛𝑔 𝐹𝑜𝑟𝐸𝑎𝑐ℎ 𝑝𝑒𝑟𝑓𝑜𝑟𝑚𝑎𝑛𝑐𝑒 𝑖𝑠𝑠𝑢𝑒𝑠 𝑖𝑛 𝑆𝑤𝑖𝑓𝑡𝑈𝐼 𝑙𝑎𝑧𝑦 𝑐𝑜𝑛𝑡𝑎𝑖𝑛𝑒𝑟𝑠 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...
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.
nilcoalescing.com