Weekly note ✏️
This is the most exciting week of the year for iOS developers.
From watching sessions and reading technical deep-dives to attending labs and community meetups—there’s a huge variety of ways to learn, explore, and get inspired.
It’s also a special moment for us: our first WWDC together in this newly reshaped newsletter format!
Sure, it’s not as drastic a change as iOS 26 and its bold new Liquid Glass look—but hey, every company deserves their own Windows Vista moment 😄
Luckily, we now have glassEffect() to help us ship it with style.
So let’s celebrate this intense, inspiring, and educational week together.
Join the conversation, explore the sessions, and enjoy the ride.
Happy WWDC! 🚀
Connect with the "Those Who Swift" team - Justas Markus & Anton Gubarenko 👋
Sponsor 🤝
Forget about Ruby and Fastlane installation issues!
Discover Codemagic CLI tools — the free, open-source Fastlane alternative for automating iOS builds, code signing and publishing.
Swift Around the Web 🌐
Say Goodbye to dismiss: A State‑Driven Path to More Maintainable SwiftUI
Fatbobman warns that overusing SwiftUI’s dismiss environment value—while convenient—can introduce hidden bugs, complicate testing, and reduce app stability. He recommends replacing it with explicit, state-driven dismissal (e.g., via Binding or custom environment values) to create more predictable, maintainable UI logic.
Read more.📍
Using AI and Cursor to Localize Xcode String Catalogs
Daniel Saidi walks through exporting and importing Swift String Catalogs from Xcode, then uses the Cursor tool and AI to translate new languages like Norwegian. He shows how to export .xliff language files, have Cursor generate translations, and re-import them—speeding up multilingual support. A clever workflow to bridge String Catalog limitations using AI.
Read more.📍
Coding 👨💻
How to Make Zoom Transition Animation in iOS 18
Khoa Pham highlights SwiftUI’s new zoom transition API in iOS 18, showcasing how to create fluid, interactive zoom effects between views using matchedTransitionSource and navigationTransition(.zoom) modifiers. He explains how this feature enhances navigation by dynamically linking source and destination elements for smooth animations.
Read more.📍
SwiftUI Keyboard Toolbar Buttons
Natascha Fadeeva explores how to add custom toolbar buttons above the keyboard in SwiftUI using the .toolbar modifier with .keyboard placement. She highlights common quirks—such as the toolbar applying universally once added—and shares practical workarounds for targeting specific text inputs.
Read more.📍
Apple🍏
Apple Developer Program License Agreement
New tools and new agreements: all developers need to accept the latest Apple Developer Program License Agreement by June 25, 2025 to maintain access to membership resources, including Certificates, Identifiers & Profiles, App Store Connect, and the App Store Connect API.
Read more.📍
Design 🎨
Get to Know New Design System
Dive deeper into the new design system to explore key changes to visual design, information architecture, and core system components. Learn how the system reshapes the relationship between interface and content, enabling you to create designs that are dynamic, harmonious, and consistent across devices, screen sizes, and input modes.
Read more.📍
Meet Liquid Glass
Liquid Glass brings a cohesive design language across Apple platforms, delivering a more dynamic and expressive user experience. Discover the design principles behind Liquid Glass, explore its key optical and physical characteristics, and learn when and why to incorporate it into your apps.
Read more.📍
Other cool stuff 🧰
Sharing Content in SwiftUI with ShareLink
Gabriel shows how the new ShareLink view in SwiftUI simplifies presenting the system share sheet—no UIKit needed—by sharing items that conform to Transferable, like String or URL. You learn how to customize the button, include previews, and even share custom types by conforming them to Transferable.
Read more.📍
Get Paid While You Sleep
Tiago walks us through StoreKit 2 integration process. The post includes practical strategies, including how to monitor your apps for updates and keep revenue flowing even while you’re offline.
Read more.📍
AI 🤖
The Prompt Engineering Playbook for Developers
Addy Osmani provides actionable prompt engineering techniques for developers working with AI models. The guide covers structured prompting, output control, and real-world examples to improve interactions with systems like GPT-4. It emphasizes treating prompts as versioned API contracts for consistent results.
Read more.📍
Meet the Foundation Models Framework
Apple introduces the on-device Foundation Models framework, enabling developers to integrate privacy-first, offline-capable LLM features in Swift apps across iOS, macOS, and visionOS. It includes structured output via guided generation, responsive streaming using snapshots, intelligent tool calling, and stateful sessions for multi-turn interactions—streamlined for easy experimentation in Xcode Playgrounds.
Read more.📍
Tutorials 📒
Creating Animation Annotations for Custom SF Symbols
Antonella Giugliano shows how iOS 17’s SF Symbols app now supports animated behaviors for custom symbols via an easy-to-use Animation tab. You’ll learn to configure effects like bounce, pulse, and rotation per layer, preview them in-app, and export symbols with embedded annotations for smooth integration using SwiftUI’s symbolEffect() modifier.
Read more.📍
Video 🎥
WWDC
There are 100+ videos. Pick any of them and learn the latest and upcoming features.
Watch here.📍
Yet, another thing…
What It’s Like Attending WWDC25 at Apple Park
Some of us dream, some of us attending. Watch this great onsite review of WWDC from Pedro Rojas. Traveling blog that we’ve deserved.
Watch here.📍
Thanks for reading Those Who Swift! Subscribe for free to receive new posts.