# 89 - WWDC 2025: A Return to Pragmatism

Published on

Article Image

Photo by Marek Piwnicki on Unsplash

WWDC 2025 has drawn to a close. Over the past week, Apple introduced a host of brand-new frameworks and APIs, and unveiled the Liquid Glass visual style that is set to leave a lasting impact in the years ahead. It’s only natural that many developers, upon discovering that some long-awaited features or APIs are available only on the latest OS versions, felt the urge to bump their minimum deployment target straight to OS 26. Yet, after taking a moment to cool down, most will have to accept the reality that these new capabilities won’t be accessible for several years.

In fact, Apple has made significant strides in maintaining backward compatibility in recent years. This year, all of SwiftData’s fixes support down to iOS 17, and UIKit’s integrated Observation features extend as far back as iOS 18. Still, these efforts fall short of fully meeting developers’ expectations.

Compared to previous years, the number of SwiftUI updates this time around was modest. However, the breakthrough of the Liquid Glass aesthetic means developers must invest more effort in visual adaptation—carefully planning how to support two distinctly different UI styles within the same project. Fortunately, Apple has provided a one-year grace period: in Xcode 26, developers can opt to disable Liquid Glass.

Although Xcode finally added an AI assistant powered by cloud-based large models—complete with thoughtful touches such as built-in AI guidance in compile error messages—it still lags behind mainstream AI coding tools in terms of iteration speed and intelligence. Given Xcode’s limited annual update cadence, it remains to be seen whether the gap will narrow or widen by WWDC 2026.

All things considered, WWDC 2025 feels more pragmatic than last year. Most of the new features and APIs are ready for developers to try out immediately. In addition, Apple released all session videos at once, and the documentation quality and readability for the new APIs show a clear improvement over previous years. Based on these highlights alone, I’d give this year’s conference at least an 8.5 out of 10.

How about you? Are you satisfied with WWDC 2025?

In last week’s issue (No. 088), I curated dozens of insightful articles, tools, and key takeaways from the developer community, covering many of the conference’s most important announcements. If you’re looking to dive deeper into the new features unveiled this year, those curated resources will be an invaluable guide.

Recent Recommendations

A (Re-)Introduction to ExtensionKit

ExtensionKit is Apple’s modern framework for building extensible and modular systems. Compared to traditional App Extensions (like Share or Siri extensions), it is more flexible, powerful, and general-purpose, making it ideal for creating plugin architectures or modular app designs. First introduced in macOS Ventura (13), ExtensionKit is now finally available on iOS 26, with full feature parity across platforms. In this post, Matt Massicotte introduces the capabilities and architecture of ExtensionKit, shares how he leveraged it in his Chime project, and discusses its potential for broader use cases.


SwiftData vs SQL Query Builder

StructuredQueries is a Swift library for building SQL queries, created by Point-Free. Often used alongside SharingGRDB, it doesn’t abstract away SQL’s complexity. Instead, it embraces the full expressive power of SQL while introducing the safety and composability of Swift’s type system, helping avoid common runtime pitfalls like typos or type mismatches. This article demonstrates how StructuredQueries elegantly handles a complex, filterable, and sortable Reminder query.

Comparing SharingGRDB and SwiftData isn’t about which is better—they represent different philosophies in data modeling and programming. The key is to understand their design goals and pick the one that fits your project’s needs and your team’s expertise.


ShareLink is SwiftUI’s native wrapper for the system share sheet (UIActivityViewController), enabling elegant sharing of text, URLs, and even custom data types. In this article, Gabriel Theodoropoulos provides a thorough guide to using ShareLink, including UI customization, sharing custom types via the Transferable protocol, and other practical considerations.


How to Use Apple Container, the Open-Source Docker Alternative in Swift

At WWDC 2025, Apple quietly released Container, a Swift-based, Apple Silicon-optimized container runtime designed to be a lightweight alternative to Docker on macOS. In this article, Mark Ponomarev walks through the architecture, capabilities, and usage of Container, complete with a full example of building, running, and publishing a Python web server container.


SwiftUI: Liquid Glass. From Basic to (A Little) Advance

Apple introduced the new Liquid Glass material at WWDC 2025—an evolution in both visual style and interaction design. In this post, Itsuki explores how to apply Liquid Glass in SwiftUI, from basic usage to advanced effects like view merging, morphing animations, group controls, and path deformations. The article also includes practical debugging tips for known beta bugs.


swift_dynamicCast in Swift’s Runtime

swift_dynamicCast is the runtime function Swift uses to perform dynamic type checking and casting. Whenever the compiler cannot guarantee type safety at compile time (as in as?, as!, or is), this function gets invoked. Xiangyu Sun dives into how this function works, from its invocation at the syntax level to how Swift’s compiler and runtime collaborate—covering metadata inspection, protocol conformance, Objective-C bridging, and more. The article also details typical casting paths (between classes, value types, protocols, optionals, and bridged types) and their performance implications.

Tools

llm.codes - Make Apple Docs AI-Readable

Apple’s developer documentation is notoriously unfriendly to AI tools, largely because it relies heavily on JavaScript rendering. Peter Steinberger built llm.codes, a free service that converts such documentation into clean Markdown format—making it usable for AI models. It supports Apple Developer Docs out of the box and works with over 69 popular technical websites including AWS, Tailwind, and PyTorch.

The scraped documents are structured and ready for use as AI context, improving code generation quality dramatically.

I used llm.codes to fetch the Apple Foundation Models documentation this year—the resulting Markdown file was over 600KB.


Dragula - A Smooth Drag-and-Drop Experience for SwiftUI

If you’re looking for a modern and flexible drag-and-drop library for SwiftUI, Dragula by Mustafa Yusuf is worth checking out. Built on UIKit for pixel-perfect precision, Dragula brings smooth interactions and high customizability to SwiftUI.

  • 🔀 Reorder items within or across sections
  • ↔️ Supports multiple selection; horizontal and vertical scrolling
  • 🍞 Custom drag previews, corner radius, and haptics
  • 🧱 Works with both flat and sectioned layouts

Swift Binary Parsing: Build Safe and Efficient Binary Parsers in Swift

Swift Binary Parsing is an open-source library from Apple designed for building binary parsers in Swift. It emphasizes performance and type safety, helping avoid common undefined behaviors like integer overflow. With ParserSpan and ParserRange, it enables efficient byte stream processing and provides safe parsers for integers, strings, enums, and custom types—ideal for Swift apps dealing with low-level binary formats.

Note: This is not a parser generator. It provides a robust foundation for developers who already understand the binary format they’re working with.

Weekly Swift & SwiftUI highlights!