Starting as early as next year, software developers will be able to design a single application that works with a touchscreen or mouse and trackpad depending on whether it’s running on the iPhone and iPad operating system or on Mac hardware, according to people familiar with the matter.

I have been waiting for this to happen for awhile. It will be interesting to see how they go about this. The simplest approach would be to add UIKit to the Mac (with some additions for supporting the trackpad and the mouse). Internally they already have UXKit, a UIKit-like framework built on top of AppKit that powers the macOS Photos app.

A more exciting approach would be an entire new UI framework (preferably written in Swift7 that was designed to be cross-platform (and cross-paradigm) from the beginning. If they were going to take this approach, this summer is the first year where that would be technically possible because Swift 5 will be the first that has binary stability (which would be required for a system framework).

Regardless of the approach they use, something like this can really benefit both platforms. It would allow for there to be more native apps running on the Mac, and it would allow for more complex apps (Xcode and Sketch please) to be built for iOS because they can just share most of their code with the Mac.

WWDC 2018 just got a lot more exciting.

As a quick aside, this is my favorite thing that always appears in these type of reports: