Eclipse Theia is a framework to build next-generation web IDEs, leveraging components such as language servers, debug adapters, and even VS Code Extensions now!
Though all these moving parts may seem confusing, we should first take a look at how it all connects together, and how you can benefit from it when making your solution based on Theia.
An increasing number of tool providers are considering to offer their rich-client tools as a service in the Cloud, but not too many got already started. New technologies and platforms, such as the language server protocol (LSP), the Monaco Editor, Eclipse Theia, Eclipse Che, and Eclipse Graphical Language Server Platform (GLSP) are key enablers for achieving this goal. In this talk, we want to share our experiences made in an early Cloud migration project of a real industrial tool using those technologies.
Eclipse Theia is a new platform for building cloud and desktop tools for engineers and developers. It's a truely open-source, vendor neutral IDE framework based on modern technology and is already adopted by Google, SAP, arm, Alibaba, RedHat, IBM, Ericsson, TypeFox and many others.
In this session I want to walk you through the history of the project, take a deep dive into its current state and explain how we managed to grow a very active and diverse community.
Some of the key difficulties of managing large development teams are ensuring consistency across developer environments, helping new developers get their tooling and dependencies set up, and enforcing consistency among dev, test, and production environments. Eclipse Che solves this problem by provisioning and managing developer environments in the cloud on top of Kubernetes distributions like OpenShift.
There is currently a large hype surrounding the language server protocol (LSP) which provides a very flexible and well-proven architecture for implementing textual language support. Wouldn’t it be cool to use a similar protocol and architecture for graphical modeling languages, too? Following in the footsteps of LSP, is it possible to allow a “generic diagram editor” talk to a graphical language server, retrieving information such as how nodes are rendered, how they can be connected, or which elements can be created from a palette?
Web tools and cloud architectures are great but what does this actually change for developers?
Each contributor currently has to setup his local environment in order to actually contribute to a project. But how about configuring just a single environment for everyone in the cloud? What if your developers didn't even have to be using a specific local environment to work on a product? This is possible using a workspace server dispatching pre-configured containers to your teams, along with all the tools they need.
You might know Eclipse Che as an open source web IDE for cloud native applications. The next generation of Che will also be a cloud-native platform for web IDEs in addition to being an IDE. Just like the original Eclipse IDE itself, you will be able to completely customize the developer experience with both server-side and client-side plug-ins!
Eclipse Theia is a new project for developing IDE-like applications that run as native desktop apps or in browsers. While its scope is similar to the Eclipse RCP platform the technology stack is very different.
In this session, I will explain Theia’s architecture and the technology it is based on by means of Eclipse, Java and Eclipse RCP concepts and terminology. We will go through the most important ideas and compare them to something you are familiar with. I will point out similarities as well as differences to give you a solid overview of the topic.
Eclipse Che has recently decided to adopt Eclipse Theia as the default web IDE provided with its developer workspaces. This is a huge step toward improving the extensibility of the IDE, embracing modern web technologies such as TypeScript, React and other JS frameworks.
From our experience developing an IDE with the GWT framework, we are providing two important extensibility mechanisms to Eclipse Che: