#swiftui
27 posts · Last used 19d
Boosted by @welcome@friends.deko.cloud
Hey Mastodon. I'm here too now.
I'm one of two people building hora — Google Calendar as an actual Mac app. Native, menu bar, work and personal accounts side by side, no browser tab.
We build mostly in public: release notes, dev-logs, and the occasional metric that makes us wince.
#Introduction #MacApps #macOS #SwiftUI
To diagnose performance issues caused by the structure of ForEach content in SwiftUI's List and lazy stacks, we can enable slow-path logging in Xcode. My new post shows how to set it up, interpret the diagnostic messages, and address the reported issues: https://nilcoalescing.com/blog/DiagnosingForEachPerformanceIssuesInSwiftUILazyContainers/
#iOSDev #SwiftUI
SwiftUI introduced a range of new toolbar customization APIs in iOS 27. They give us more control over how toolbars adapt as apps become resizable and appear in more contexts. I explored all the new additions, with examples showing how each one works: https://nilcoalescing.com/blog/AdaptiveSwiftUIToolbarsInIOS27/
#iOSDev #SwiftUI
Supporting multiple iOS versions in SwiftUI doesn’t have to mean duplicating views.
I wrote about a few patterns I use to keep compatibility code clean from conditional modifiers to a .backport namespace.
📖 https://dev.to/emadbeyrami/supporting-multiple-ios-versions-in-swiftui-without-turning-your-views-into-a-mess-52oc
#SwiftUI #Swift #iosdev #iosdevelopment #Apple
The first issue of a new newsletter, Apple UI Insider, is out: a field guide to Apple's UI rendering stack, Core Graphics, Core Text, Core Image, Core Animation, and SwiftUI.
Every picture in it is drawn twice, once by my clean-room renderer, once by Apple's own frameworks, with the differences measured and published. That check caught a real bug: two renders disagreeing by 3.9%, traced to one coordinate flip, fixed to 0.07%.
#SwiftUI #AppleDev
https://aleahim.com/blog/apple-ui-insider/
Stop thinking of SwiftUI as a view tree; it's a demand-driven attribute graph. Once you realize it's just a giant set of rules and cached values, the "magic" of State and identity actually makes sense.
🔗: https://aleahim.com/blog/swiftui-is-one-graph/ by Mihaela Jakić
#iOSDev #SwiftUI
Boosted by @welcome@friends.deko.cloud
👋 #introduction
I'm John — Italian Lead Developer on the Cloud team at @namecheap, based in Rome.
I build developer tools, UI components and macOS apps: from Z-80 Assembly on the Commodore 64 to SwiftUI and Go today. Coding since 1983 and still in love with it.
Creator of WP Bones, Mantine Extensions, FinderGit, Netfox and octoscope.
Here I'll post about #SwiftUI #React #Go #macOS #WordPress and a healthy dose of #Amiga nostalgia.
🔗 gfazioli.github.io
Boosted by @fedicat@pc.cafe
finally replaced AlertToast with the new #swiftui alert
https://developer.apple.com/documentation/swiftui/view/alert(_:ispresented:presenting:actions:message:)-8584l
I recently launched http://SwiftUIArchitecture.com
Over the years, I've come across many excellent articles, WWDC sessions, videos, books, and open source projects about SwiftUI architecture. Instead of letting those resources get lost, I wanted to put them all in one place.
The site is a curated collection of high-quality SwiftUI architecture resources that I personally recommend. I'll continue adding new resources as I discover them.
I hope you find it useful.
#SwiftUI #iOSDev #AppleDev
Are conditional view modifiers a good idea in SwiftUI?
Short interview question. Long answer.
Apple’s Xcode 27 swiftui-expert-skill and objc.io both point the same way. I wrote the answer I’d give in the interview with real world examples:
https://emredegirmenci.substack.com/p/are-conditional-view-modifiers-a
#swiftlang #iosdev #swiftui
Building Groove has taught me a lot about mobile app design and SwiftUI. It’s been fun to iterate and improve the look and feel over the last few months, addressing feedback as well as pain points I’ve come across using it myself every day.
The next update is, I think, the best looking version so far.
I’ll need to redo 1 or 2 screenshots for the App Store though and I’m dreading that. 😭
#swiftui
#swiftui never got an update to make TimelineProvider more async friendly and it's not coming with #Xcode27, so I finally got around to making my own incredibly lightweight wrapper. Feel free to checkout and use AsyncTimelineProvider.
https://github.com/Rspoon3/AsyncTimelineProvider
#iosdev #ios #swift
Launch day for Dashlet has come - it is now available for download, and, at least for now, pre-orders seem like a good way to go - though even with a longer lead time would've been better. (1/3)
#buildInPublic #dev #swift #swiftUI #iOS
When storing custom values in properties of an @Observable, it’s recommended to make them Equatable to minimize SwiftUI view updates. I’ve just published a post looking at how @Observable handles equal assignments and why Equatable conformance matters: https://nilcoalescing.com/blog/EquatablePropertiesInObservableClasses/
#SwiftUI #iOSDev
A WWDC 27 Update on Building a Mac-assed App with SwiftUI
https://pfandrade.me/blog/swiftui-mac-assed-wwdc27-update/
#SwiftUI #MacDev #Apple
I wish Swift had a way to explicitly shadow certain type names from frameworks. #SwiftUI claims names List, Table (and now Documents as of iOS 27 beta 2) for types that we never use so we end up prefixing every with Linear all the time.
I've once again taken the time to write down my thoughts—this time on the Liquid Glass changes in Apple’s 2027 releases.
Join me on a journey through the great, the good, and the curious. While macOS looks better than ever, iOS 27 feels like a significant step backwards, looking flatter than last year. I also dive into what HDR has to do with it and explore the other design changes Apple made.
https://gamery.app/blog/liquid-glass/
#SwiftUI #UIKit #iOS #macOS #WWDC #Apple #Design #BuildInPublic #Swift
I went with this approach to the new TabBar which kinda got a bit inspired by Tidal.
#iosdev #buildinpublic #swiftui #liquidglass #hatersgonnahate
Boosted by @joe@f.duriansoftware.com
SwiftUI's List is only lazy when SwiftUI can determine how many views a ForEach element resolves to without evaluating the closure.
Two common patterns prevent this:
- Using an
ifstatement inside ForEach - Wrapping rows in AnyView
In both cases, SwiftUI evaluates the ForEach closure for every element before any rows are displayed.
You can learn more in the free sample chapter of my book "The SwiftUI Way": https://books.nilcoalescing.com/the-swiftui-way/building-a-performant-and-stable-interface/maximizing-the-performance-of-dynamic-lists/



