Natalia Panferova
@natpanferova.bsky.social
5.4K followers 540 following 260 posts
Software Engineer | iOS | macOS | Swift | SwiftUI | Previously SwiftUI at Apple | Author of books for Swift developers: https://books.nilcoalescing.com
Posts Media Videos Starter Packs
Pinned
natpanferova.bsky.social
I released a new book 🎉

SwiftUI Fundamentals combines my knowledge and experience from using SwiftUI since its release and working on its source code at Apple to give you a solid understanding of the most important aspects of the framework: books.nilcoalescing.com/swiftui-fund...

#SwiftUI #iOSDev
SwiftUI Fundamentals
The essential guide to SwiftUI core concepts and APIs
books.nilcoalescing.com
natpanferova.bsky.social
Exciting to see @brevecoffeeapp.bsky.social included in the latest issue of Those Who Swift newsletter 🤩

thosewhoswift.substack.com/p/those-who-...
Screenshot of the Friends section from Those Who Swift newsletter showing the Breve: Barista Recipes app promotional banner
Reposted by Natalia Panferova
nilcoalescing.com
Explore different ways to work with the SwiftUI environment, including reading and setting values, creating custom environment keys, and using it to pass down actions and observable classes: nilcoalescing.com/blog/SwiftUI...
#SwiftUI #iOSDev #SwiftLang
SwiftUI Environment
Explore different ways to work with SwiftUI environment, including reading and setting values, creating custom environment keys, and using the environment to pass down actions and observable classes.
nilcoalescing.com
natpanferova.bsky.social
When testing Dynamic Type support in @brevecoffeeapp.bsky.social I noticed that text would get truncated at larger text sizes for no real reason. I had to apply fixedSize(horizontal:vertical:) as a workaround to force the text to wrap instead: nilcoalescing.com/blog/Avoidin...
#SwiftUI #iOSDev
Avoiding text truncation in SwiftUI with Dynamic Type
Prevent unnecessary text truncation at larger text sizes with the fixedSize(horizontal:vertical:) modifier, forcing the text to expand vertically as needed.
nilcoalescing.com
Reposted by Natalia Panferova
nilcoalescing.com
Format interpolated values like arrays of strings, measurements, and dates directly inside SwiftUI Text views using FormatStyle, and display dynamic dates using Text.DateStyle: nilcoalescing.com/blog/Formatt...
#SwiftUI #iOSDev #SwiftLang
Formatting data inside SwiftUI Text views
Format interpolated values like arrays of strings, measurements, and dates directly inside SwiftUI Text views using FormatStyle, and display dynamic dates using Text.DateStyle.
nilcoalescing.com
Reposted by Natalia Panferova
natpanferova.bsky.social
I wrote a blog post taking a closer look at my new app @brevecoffeeapp.bsky.social from a technical perspective, sharing what I learned while building it for iOS 26 with Liquid Glass design, new SwiftUI APIs, and system integrations: nilcoalescing.com/blog/Introdu...
#iOSDev #SwiftUI #IndieDev
Introducing Breve: an arty coffee app built for iOS 26
Take a closer look at my new app Breve, exploring the technical insights around Liquid Glass design, iOS 26 SwiftUI APIs, and system integrations.
nilcoalescing.com
Reposted by Natalia Panferova
nilcoalescing.com
Swift 6.2 is here with iOS 26 and Xcode 26, and while most of the focus is on concurrency, there are other noteworthy changes and improvements too. Get up to speed with the non-concurrency updates in Swift 6.2: youtu.be/0hI_4OWN31o
#SwiftLang
What’s New in Swift 6.2 (Beyond Concurrency Updates)
YouTube video by Nil Coalescing
youtu.be
natpanferova.bsky.social
Thank you 🙌 Happy that you are enjoying it!
Reposted by Natalia Panferova
natpanferova.bsky.social
Started working on the September newsletter. It will be a bit late this time, got delayed by @brevecoffeeapp.bsky.social launch and #shipaton2025 submission 😅 You can still sign up here to get it in your inbox: nilcoalescing.com/newsletter
Nil Coalescing - Newsletter
nilcoalescing.com
Reposted by Natalia Panferova
Reposted by Natalia Panferova
gallaugher.bsky.social
SwiftUI Students: @natpanferova.bsky.social is a recommended follow. Her insights are great & she writes a wonderful book on Swift. 👇👇🏿👇🏽👇🏻
natpanferova.bsky.social
Here’s my custom stretchy() SwiftUI modifier built with visualEffect(), powering the stretchy header in @brevecoffeeapp.bsky.social ☕️

I shared the code for it earlier in my blog post: nilcoalescing.com/blog/Stretch...

#iOSDev #SwiftUI
natpanferova.bsky.social
Thank you for your support!
natpanferova.bsky.social
Here’s my custom stretchy() SwiftUI modifier built with visualEffect(), powering the stretchy header in @brevecoffeeapp.bsky.social ☕️

I shared the code for it earlier in my blog post: nilcoalescing.com/blog/Stretch...

#iOSDev #SwiftUI
Reposted by Natalia Panferova
brevecoffeeapp.bsky.social
Breve is now available on the App Store!

Make cappuccinos, lattes, mochas, iced drinks, and more with easy recipes that adapt to your equipment.

Choose from professional or casual espresso brewing and milk frothing methods to make every cup your own.

apps.apple.com/app/id674730...

#Coffee
Screenshots of Breve showing an iPad with a recipe library of classic coffee drinks and an iPhone with a cortado recipe on screen
natpanferova.bsky.social
Haha thank you 😃 glad you like it!
natpanferova.bsky.social
Very excited to share that my new app @brevecoffeeapp.bsky.social is now available on the App Store!

Built for iOS 26 with Liquid Glass design, Breve offers handcrafted recipes and guides for making coffee drinks at home that adapt to your equipment.

apps.apple.com/app/id674730...
Promotional banner for Breve featuring the app icon, tagline "Make café-style drinks at home" and two iPhones showing recipes for cortado and macchiato on watercolor backgrounds
Reposted by Natalia Panferova
Reposted by Natalia Panferova