

We could use (whatever the UI stack on OSX is), OpenGL, and (something?) to replace them. There might be replacements for each of those components. Replacing any one of them with a cross-platform solution would be an enormous undertaking, if it's possible at all. Those are all critical components in how the Terminal is built. If WinUI, DirectX, and WinRT were available on OSX, then it would be trivial for us to port the Terminal to MacOS. With the 4 of us on the Terminal, I'm not sure it's really feasible for us to try and support an entirely separate UI stack. They likely have a team of engineers for the Windows version and a separate team for the Mac version. Plus, with their larger teams, it's probably easier for them to maintain two different UI stacks (one for Windows and one for OSX). I'm not sure what tech stack they're using, but I'm sure that once they got the apps running cross-platform, it was easier to maintain that. Office on the other hand has been around for decades and has an enormous team of engineers. We wanted to make sure to build a native application so that in the long run, the Terminal would have a smaller memory commit and be far more performant than we could ever get with Electron. However, they do come with the burden of the entire Electron runtime, and that's something that we weren't comfortable with on the Terminal team.

Visual Studio Code and Teams are Electron applications which are fundamentally web apps, so they're trivial to make cross platform.
