Search
Find articles by title, description, or tag.
19 posts
Building Canopy: A Native GitHub Inbox and a Testbed for Lists
How building a native macOS GitHub notification client exposed surprising gaps in GitHub's public API and stress-tested Lists in a real app.
Git Worktrees for iOS: A Practical Setup Guide
How to set up an iOS project for git worktrees, including DerivedData isolation, SPM caching, simulator conflicts, and project file merge strategies.
Building Lists: A High-Performance Diffable Data Source Framework
A deep dive into the design, performance, and trade-offs behind Lists — a pure-Swift replacement for UICollectionViewDiffableDataSource that's up to 1000x faster than Apple's implementation.
Building a Multi-Agent Code Reviewer
What I learned building claude-deep-review, a code review skill that decomposes review into 15 specialized agents running in parallel.
Orchestrating AI Agents with Claudio: Lessons from Parallelizing Claude Code
What I learned building Claudio, a tool that runs multiple AI coding agents simultaneously using git worktrees
Shipping a CLI on FoundationModels
What it's actually like to build a real tool on Apple's on-device FoundationModels framework — the 4,096 token ceiling, blind token budgeting, and everything in between
Teaching AI to See SwiftUI Previews
What I learned building a CLI toolset that captures SwiftUI previews programmatically, giving AI coding assistants a visual feedback loop.
Using SwiftUI Views in UIViews
Directly add a SwiftUI View to your UIView without a UIHostingController
Generating SwiftUI Previews for UIKit
How to quickly generate a preview for your UIKit View
Cross-Platform Size-Aware SwiftUI
How to quickly extend cross-platform SwiftUI for macOS size classes
Generating Hashable and Equatable for functions
Often, we pass functions as stored arguments to an object. In this quick tip, we explore how we can still maintain `Hashable` and `Equatable` when we do so, without having to write it ourselves.
View Modifiers
How view modifiers work, tips & tricks for declaring our own, and nipping subtle bugs in the bud.
Data Flow Property Wrappers
With so many property wrappers for data flow and data binding in SwiftUI, it's easy to get confused about which one to use. Here, we'll learn about the differences between State, StateObject, Binding, and ObservedObject. We'll look at when to use each one, and the differences between them.
Stacks on Stacks
An introduction to some of the most powerful tools in SwiftUI, stack views
An Intro to SwiftUI
What is SwiftUI, why should I use it, and what's the most basic building block?
Just Use A Button
Get highlight styles for SwiftUI views in List, without using a NavigationLink
Using Cross Import Overlays to Improve Your Libraries
How to use cross import overlays in your project, today
Build views, not cells
Why I build `UIView`s, not `UITableViewCell`s.
Integrating SwiftUI in Leaf Nodes of your iOS Application
Integrating SwiftUI at the Leaf Nodes