CombineEx (2025)

I spent a few years building iOS apps with ReactiveSwift before Combine existed, and when I made the switch to Combine I kept noticing small ergonomic gaps. Combine got most of the big things right, but it was missing a handful of types and patterns that ReactiveSwift had refined over years of production use. CombineEx is the layer of those things I kept re-implementing in every project.

The biggest additions:

CombineEx is also what Mortar 3 used for its reactive bindings, and the patterns there ended up influencing how I thought about screen architecture later.

Source on github.