Do you want to implement a web-based tool with more than “just” textual programming?Then learn about EMF.cloud, a rapidly growing ecosystem of components for developing domain-specific tools in web-based IDEs such as Eclipse Theia and VS Code.
The Eclipse ecosystem traditionally has strong support for the creation of domain-specific tools and EMF.cloud is here to make sure it stays this way for modern web-based tools. EMF.cloud is an umbrella project for a variety of components providing this support for web-based tools such as Eclipse Theia or VS Code. In this talk, we provide an overview of the most important building blocks of EMF.cloud and demonstrate how you can apply them within your own domain-specific tool. We will especially focus on new components that have been recently added to the project and that we will present at EclipseCon for the first time:
- Validation: A model validation framework integrated into the EMF.cloud model server. This component allows live-validation of model constraints and shows the results in various parts of a tool UI including diagrams and the problems view. Constraints can be defined in any language or framework of choice, such as Java, OCL, etc., and also existing implementations of EMF-based constraints can easily be integrated into EMF.cloud validation support.
- Diff and Merge: A model comparison component to diff and merge domain models. This component adapts EMF Compare and allows you to use its capabilities in a web-based tool. This also includes visual diagram comparisons.
- Property view: A flexible property view allowing you to edit the properties of arbitrary selected model elements.
Furthermore, we demonstrate noteworthy additions to existing EMF.cloud components including custom commands for the model server, the generator for the tree master-detail view, the latest version of the web-based Ecore tools and the coffee editor example.
Finally we close with an overview of what is cooking in the lab. EMF.cloud is among the most active projects at Eclipse at the moment, lots of new innovations and technologies are coming from an active community!