thanks for your question, I can understand the confusion here.
Although Theia uses some components of the VS Code stack (e.g. the Monaco editor) and a lot of the design is similar, they have quite different code bases and architectures.
There are a couple of key differences between the IDEs which led us to base Mbed Studio on Theia:
VS Code is an extensible editor which users can add plugins into. These are primarily designed to be UI components and not existing binaries. One design goal with Mbed Studio was to offer a single installer which set up an environment for embedded development including all of the tools. When we started this project, we found this was far easier using Theia as we had complete control over the code base.
Developers are quite limited to how the UI can be extended in VS Code and (until recently) it wasn’t even possible to implement rich UI in side bars. Theia gives us complete control over how the experience is delivered including modal dialogs and wizards.
It was always our intention to release a browser-based version of our embedded tools. Theia was designed to deliver in this space from the ground up and has meant we have been able to realise delivery of our product in both a desktop and browser environment using the same codebase.
Recently, projects have started to appear which utilise VS Code in the browser (e.g. GitHub codespaces), but there are still technical limitations we can’t work around which aren’t a problem in Theia (e.g. connecting to target hardware from the browser) .
We are keen to introduce embedded experiences wherever our developers want to work, but need to balance this with the practicalities of re-implementing functionality in different IDEs.
Interestingly, both Theia and VS Code can utilise the same plugins (in theory) so one area we are exploring is bringing our embedded functionality to VS Code natively aswell, while still using the same codebase.