For over 20 years the Eclipse IDE platform, along with the Eclipse Rich Client Platform (RCP), have provided core technologies for building richly featured language IDEs, products, and applications that are portable across Windows, Mac, and Linux desktops. However, time moves on and the next generation of desktop products and applications are now being built with web technologies. In many scenarios there is a need to support both desktop and web deployments with the same functionality, and obviously those who have this requirement would ideally like to support it using a single platform.
With this shift towards web and cloud development, many Eclipse platform adopters are now evaluating how to best migrate their existing tools, IDEs and applications. One technology to consider is Eclipse Theia. Theia is a platform that can be used for building both web and desktop IDEs and tools, based on modern, state-of-the-art web technologies (TypeScript, CSS, HTML). This often leads to the question: Is Eclipse Theia the next generation of Eclipse?
EclipseSource, a member of the Eclipse Cloud DevTools Working Group, recently published a blog post asking this question. The article discusses requirements for a tool platform and how both Eclipse desktop and Eclipse Theia address these requirements. Ultimately, they come to the conclusion that Eclipse Theia can indeed be considered the next generation platform for building portable applications. And I agree. Eclipse Theia is indeed the next generation tooling and applications platform from the Eclipse Foundation!
Just to be clear, this is not an announcement of the deprecation of the Eclipse IDE, the Eclipse Tool Platform or Eclipse RCP. These projects are stable, widely used, well maintained, and will continue to be so for a long time. The timeframe of course depends on the health and activity of the ecosystem and the community, which is now the focus of the Eclipse IDE Working Group created last year to ensure the long-term sustainability of the Eclipse IDE and Platform. I highly recommend any company building products or critical business applications on the Eclipse platform to join that group. At the same time, we are clearly seeing a shift of developer tools and IDEs towards web-based technology, and ultimately the cloud. As a result, many projects currently based on Eclipse desktop technologies are asking what comes next.
The Eclipse ecosystem has always combined sustainability, innovation, and vendor neutral collaboration. For the last 20 years, the Eclipse desktop ecosystem has been an exemplar of this, and it will continue to be a focus of the Foundation. At the same time, we continue to innovate, e.g. with Eclipse Theia and other related technologies such as Eclipse Che, Eclipse GLSP, and EMF.cloud. This is the beauty of an industry-driven open source ecosystem like Eclipse. It addresses the requirements of adopters to have a stable platform, while also providing paths to move forward and innovate.
Despite not sharing a single line of code, in many ways Theia is an evolution of the Eclipse Tools Platform. Theia builds on wisdom distilled from two decades of engineering at Eclipse, in order to inspire the next generation. Besides the obvious benefit of simply offering a web-based technology stack, Theia is slimmer, and able to lean more heavily on aspects of the web technology stack. It does not, for example, provide its own UI technology (as Eclipse needed to do with SWT). It also doesn’t provide a new module system (as Eclipse did with OSGi). Instead, it is based on available technologies such as HTML/TypeScript, Node, VS Code extensions, and the Monaco Code Editor. This is great for the sustainability of the project. By maintaining less code and reusing more standard technologies, development resources can be focused more on the core capabilities of the platform.
Theia also has a very healthy community of active contributors, adopters and funding organizations. It is seeing widespread and mainstream adoption, serving as the platform for notable commercial technologies, including the Arduino IDE, Arm’s mbed studio, and the Google Cloud Shell Editor. There is also a wealth of extensions freely available for Theia at the Open VSX Registry.
I should also point out that along with Theia, there are several additional technologies that help create a solid ecosystem for the next generation tool platform at the Eclipse Foundation. To mention just a few, Eclipse Che offers online workspace management; Eclipse GLSP provides support for building diagram editors in the browser; Eclipse CDT.cloud for building customizable web-based C/C++ tools and EMF.cloud moves the Eclipse modeling ecosystem to the web.
We are very happy to see Theia flourishing and the robustness of its community. Theia certainly is the central building block of the new generation of tools that want to benefit from web-based technologies and cloud deployments. And so, yes, in this context, Theia and its ecosystem can be considered the next generation of Eclipse Platform.
2022-04-19: Edited to update the contributors logo graphic