Learn how to add Codable conformance to Swift enums, including automatic synthesis, customizations, and fully manual implementations for complex cases: nilcoalescing.com/blog/Codable...
#iOSDev #SwiftLang
Posts by Natalia Panferova
It's my birthday π To celebrate and to continue the tradition I'm doing a special book sale just for today! You can get any of my Swift and SwiftUI books and bundles with a 20% discount using the coupon code BD2026 applied at checkout: books.nilcoalescing.com
#iOSDev #SwiftUI #SwiftLang
π€ ππΉ ππ¦πππππ ππ ππ€πππ‘ππΌ πππ₯π‘ by Natalia Panferova (@natpanferova.bsky.social)
Why direct πΌππππ interpolation in πππ₯π‘ fails outside localized strings, and the correct workarounds.
#SwiftUI #Swift #iOSDev
nilcoalescing.com/blog/Embeddi...
Build a stretchy image header in SwiftUI using the visualEffect() modifier, scaling the image on pull-down without tracking scroll offset or modifying its frame: nilcoalescing.com/blog/Stretch...
#iOSDev #SwiftUI
Daiki Matsudate on stage at the 10th try! Swift Tokyo 2026
Natalia Panferova holding a 10th anniversary neon sign at try! Swift Tokyo
Imperial Palace moat and stone walls with the Tokyo skyline in the background
Tokyo Tower visible through a canopy of green trees in a park
Got home from Japan and try! Swift Tokyo, the trip was amazing! It was so good to meet the local iOS community and explore Tokyo a bit. Thank you so much for having me @tryswift.jp βΊοΈ
#tryswift
Use a shared Core Spotlight search index to make content discoverable in system Spotlight and support internal search within your SwiftUI app: nilcoalescing.com/blog/CoreSpo...
#iOSDev
Register your macOS app as a login item using SMAppService: nilcoalescing.com/blog/LaunchA...
#macOSDev
π± πππππ² π΄π΄ πΆπ πΌππ!
Highlights:
π€ πΆππππ₯ ππ π πΆππ ππ
π³ ππ‘ππππΎππ‘ 2
π€ ππΉ ππ¦πππππ ππ πππ₯π‘
π§© π΅πππ ππ‘ππ‘π ππππππππππ‘
π .π ππππβππππ
βοΈ πππππ ππππ’ ππππππ‘πππ
βΏ ππππ£πππ€ π΄ππππ π ππππππ‘π¦
β‘ πΈπ£πππ‘ π»πππππππ
#Swift #SwiftUI #iOSDev
ios-newsletter.snappmobile.io/issues/2026-...
π« Newsletter Issue #102 went out to 3,200+ subscribers. Here are our developer community highlights!
The recording of my talk from try! Swift Tokyo is already available on YouTube! I shared my perspective on what drives change in SwiftUI, how new APIs come to life, and why we should try to keep up with the changes: www.youtube.com/watch?v=SQ-b...
#tryswift #iosdev #swiftui
Explore SwiftUI APIs for customizing scroll behavior, including paging and view-aligned snapping, and learn what to watch out for to avoid unexpected results: nilcoalescing.com/blog/ScrollV...
#iOSDev #SwiftUI
Screenshot of an email that reads "Hi there (this is for Natalia) β I just wanted to say thanks for writing the SwiftUI books β Iβve been working on my own apps for a few weeks and kept running into walls and warnings and a great deal of frustration β I knew I was approaching the appβs construction wrong, but couldnβt figure out how. I saw your books mentioned in a newsletter, bought them... and the explanations of view identity and data flow made sense in a way that just hadnβt gotten through to me no matter how many other tutorials or bits of Apple documentation I read. Iβm not even 20% through the first one and Iβm already so much better off. Thanks again, and really, great job on the writing. Itβs so clear and easy to follow, and makes it so much easier to think in a model that works with SwiftUI instead of against it. I will be recommending them to anyone I run across who needs help. Well done!"
Got the nicest feedback about my SwiftUI books, it made me really happy π₯°
"... the explanations of view identity and data flow made sense in a way that just hadnβt gotten through to me no matter how many other tutorials or bits of Apple documentation I read."
The new backgroundExtensionEffect() SwiftUI modifier in iOS 26 lets us extend and blur visual content beyond a viewβs bounds, creating continuous backgrounds behind elements like sidebars, inspectors, and overlay controls: nilcoalescing.com/blog/Backgro...
#SwiftUI #iOSDev
Natalia Panferova's talk agenda slide
Natalia Panferova at the podium
Speakers of try! Swift Tokyo on stage
try! Swift Tokyo group photo
Today was the last day of the try! Swift Tokyo conference and also the day of my talk. I think it went well π Thank you so much to everyone involved @tryswift.jp for such an amazing experience! #tryswift
Thank you so much π It makes me very happy! I hope you'll enjoy the book!
π¨ πΆπ’π π‘ππππ§πππ ππΉ ππ¦πππππ ππ ππ€πππ‘ππΌ by Natalia Panferova (@natpanferova.bsky.social)
Covers size with font(), color with foregroundStyle(), rendering modes (monochrome, hierarchical, palette, multicolor), variable values for dynamic states, and fill and slash design variants.
#SwiftUI #SFSymbols
Add symbol effect animations and transitions to symbol images in SwiftUI to handle icon state changes without custom drawing or animation logic: nilcoalescing.com/blog/Animati...
#iOSDev #SwiftUI
Precisely scope animations to specific animatable attributes in SwiftUI by using the animation(_:body:) API introduced in iOS 17: nilcoalescing.com/blog/Isolate...
#iOSDev #SwiftUI
π± πππππ² π΄π³ πΆπ πΌππ!
Fresh insights:
π¦ ππ€πππ‘'π πΌπ·πΈ ππ’πππππ‘
π πππππππππππππππ‘πΆπππ‘ππ₯π‘ & ππππππππ
π¨ πΆπ’π π‘ππππ§πππ ππΉ ππ¦πππππ
π π΅π’ππππππ π πΏππ π‘ π
ππππππππππ‘
πΌ π΄π π¦πππΌππππ
π ππππ π
πππππ‘ ππππ’
π€ πππππ - πππ’π πππ π΄ππππππ¦ π»ππ π΄πΌ
π ππππππ΅πππ
#Swift #SwiftUI
ios-newsletter.snappmobile.io/issues/2026-...
Heading to Japan tomorrow for @tryswift.jp βοΈ I've never been to Tokyo or the try! Swift conference before, so getting to attend and speak is a dream! Can't wait to meet everyone!
tryswift.jp/en/
Updated for 2026! Experience our fresh Liquid Glass redesignβdonβt just check your schedule; take a trip back in time and enjoy past conferences like never before. (macOS and visionOS versions are currently under review) apps.apple.com/app/try-toky... #tryswift
Learn how to adjust size, color, rendering modes, variable values, and design variants of SF Symbols in SwiftUI apps: nilcoalescing.com/blog/Customi...
#iOSDev #SwiftUI
I learned several things from this!
SwiftUI offers several methods to change the color of text, including foregroundStyle() and tint() modifiers, AttributedString attributes, and the textRenderer() API for advanced styling: nilcoalescing.com/blog/Foregro...
#SwiftUI #iOSDev
Published a new YouTube video covering some advanced techniques for working with Optionals in Swift. I shared these as part of my presentation "Swift's Hidden Gems" at the
ARCtic Conference and many developers were surprised youtu.be/qgDIOrKnmuw
#SwiftLang
In iOS 26, SwiftUI introduced a new close button role for dismissing informational views, automatically showing a standard close icon without needing a custom label: nilcoalescing.com/blog/AddAClo...
#iOSDev #SwiftUI
I wrote a post on how we can embed SF Symbols in Text and style them with modifiers in SwiftUI by leveraging LocalizedStringKey interpolation: nilcoalescing.com/blog/Embeddi...
#iOSDev #SwiftUI
Configure the NavigationStack and Form background in SwiftUI so partial height sheets keep the translucent Liquid Glass appearance on iOS 26: nilcoalescing.com/blog/LiquidG...
#iOSDev #SwiftUI
SwiftUI is approachable at first, but in real-life projects it's easy to make mistakes that can compromise app stability and performance.
My new book "The SwiftUI Way" will help you recognize the most common anti-patterns and choose better alternatives: books.nilcoalescing.com/the-swiftui-...
Step through the essential setup for AlarmKit timers in iOS 26, from requesting authorization and scheduling a countdown to presenting the Live Activity and an in-app list of active timers: nilcoalescing.com/blog/Countdo...
#iOSDev #SwiftLang