Transitioning to SwiftUI
Article Summary
Daniel Roth from Thumbtack rebuilt their entire iOS component library from scratch in SwiftUI. The result? Faster builds, fewer bugs, and a development experience that finally lives up to the hype.
When Apple launched SwiftUI in 2019, Thumbtack's iOS team saw potential but waited until iOS 15 to make the leap. Rather than wrap their existing UIKit components, they made the bold call to rebuild their entire Thumbprint design system natively in SwiftUI—a decision that required rethinking fundamental assumptions about how UI code works.
Key Takeaways
- SwiftUI's declarative approach eliminated the infinite scroll view hack entirely
- Build times dropped from 20-30 seconds to near-instant preview updates
- State-driven views made race conditions and sync bugs impossible
- Environment variable workarounds solved the view hierarchy styling catch-22
- Calendar component became faster and more responsive without scroll limitations
Critical Insight
Thumbtack's SwiftUI migration delivered measurably faster development cycles, simpler code, and fewer bugs by embracing declarative thinking over imperative patterns.