profile

SwiftLee Weekly by Antoine van der Lee

A new SwiftLee article, code snippet, Swift Evolution updates, 5 top community articles, and a weekly answer to a question from the community to level up your Swift skills.

Featured Post

SwiftLee Weekly - Issue 286

This week's SwiftLee Weekly covers: Raw Identifiers in Swift Using a WebView in SwiftUI Using App Intents correctly Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Swift Computed Property: Code Examples While this is a basic in Swift, there are some nice additions since recently. For example, you can now use async and typed throws in the getter of a Swift computed property. SPONSORED Full iOS coverage. Fast If your test suite is missing critical flows or isn’t up to date, you’re at...

This week's SwiftLee Weekly covers: My Apple Design Workshop experience The end of Property Wrappers? Watch out for 30,000x slower Equatable conformance Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Property Wrappers in Swift explained with code examples I'm sure many of you are familiar with Property Wrappers, or at least, you've used built-in wrappers like @State or @Published. I've revisited this article and updated it to have a look at how they relate to Swift Macros and why...

This week's SwiftLee Weekly covers: @isolated(any) New Observations API SwiftUI for macOS Tahoe Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Async await in Swift explained with code examples Everybody talks about Swift 6.2 and approachable concurrency, but what if you're still working with closure-based code? Migrating to async-await is your first step. Though, should you do that before or after migrating to Swift 6+? SPONSORED Faster iOS app releases with automated QA If slow QA...

This week's SwiftLee Weekly covers: My favorite open-sourced Apple frameworks The biggest benefit of Going Indie A special "I'm on a holiday" edition Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Global actor in Swift Concurrency explained with code examples The @MainActor is probably well-known and it's an example of a global actor. But how and when should you use a custom global actor? That's explained in this week's article, including a common risk when defining one. SPONSORED...

This week's SwiftLee Weekly covers: A threading risk for Combine & Swift Concurrency Flux pattern in Swift A crash debugging experience Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Combine and Swift Concurrency: A threading risk Migrating to Swift Concurrency brings all kinds of insights. Last week, I found an unexpected crash in RocketSim, caused by a Combine pipeline. It resulted in some crucial insights for those using Combine with Swift Concurrency. SPONSORED Fastlane...

This week's SwiftLee Weekly covers: Snapshot testing and CI A hidden Xcode 26 AI prompt 10 + 1 tips on using Claude Code Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Threads vs. Tasks in Swift Concurrency Switching to Swift Concurrency if you've worked for years with GCD might make you struggle getting rid of the 'threading-mindset'. Tasks still result in work being done on different threads, but we don't directly manage them anymore. This article is an essential piece of learning...

This week's SwiftLee Weekly covers: @Animatable in SwiftUI Preparing for the future of App Development 6 Mistakes that slow down development Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Modern Swift Lock: Mutex & the Synchronization Framework While actors work great in Swift Concurrency, they're not always the best choice. You might not want to introduce the overhead of async/await in some cases, in which a Mutex with Sendable support can be a way out. SPONSORED Transform Your...

This week's SwiftLee Weekly covers: Vibe coding in Xcode 26 Extensible enums in Swift Designing UI with Liquid Glass Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Swift Concurrency & Swift 6 Course (Launch offer) After starting in March, I'm happy to announce the first completion of all 11 modules in my Swift Concurrency Course! You now have access to: 58 lessons 10 assessments 11 modules The final module has been great fun—it's been a result of migrating several packages to Swift...

This week's SwiftLee Weekly covers: The end of Flutter? Losing £25,000 Time to drop support for older iOS versions? Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST Sparkle: Distribution apps in- and out of the Mac App Store When I say 'Sparkle,' for some, it will immediately ring a bell. It's an open-source framework that's available since 2006 (!!) and the most used framework for macOS updates out of the App Store. This week's article might be a niche topic, but the process,...

This week's SwiftLee Weekly covers: Reverse-Engineering Xcode's Coding Intelligence prompt Speed up iOS Launch with fault ordering Running the camera in Xcode's Simulator Enjoy this week's SwiftLee Weekly! THIS WEEK'S BLOG POST #Playground Macro: Running Code Snippets in Xcode’s canvas Xcode 26 introduces an integrated playground experience using the new #Playground macro. It's an absolute joy to experiment with your code right inside the editor. I've not been using Swift Playgrounds a lot,...