Logo of MSCA (Marie Skłodowska-Curie Actions)

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska-Curie grant agreement n° 813884.

Flag of European Union

Lowcomote logo

The lowcomote technologies provide a robust framework for the design, development, and operation of low-code development platforms. Most of these technologies are available in open source.

WP3: Low-code engineering of large-scale heterogeneous systems


Panoptes is a low-code solution for monitoring the performance of ML models over time. It exposes a DSL that can be used by data scientists to define performance monitoring policies without delving into the technical implementation aspects.


DSL-comet is an iOS tool that allows graphical, collaborative modelling on mobile devices. You can have an overview of the tool here and you can add new domain metamodel and manage their access via a role hierarchy as described in this article.


ALTER is an iOS application for creating models and interacting with them using augmented reality on iPhones or iPads. You can have an overview of the tool here. Click here to read the publication.


Droid is a framework that automates the configuration, evaluation and synthesis of recommender systems for modelling languages. The framework supports the customisation of recommender systems for a particular modelling language, assistance on the decision of which recommendation method works better for the recommendation task and generation of customised recommendation services that can be integrated with external modelling tools. Visit Droid here. Click here to read the publications.



CHESSIoT id a model-driven environment to support the design and analysis of industrial IoT systems. CHESSIoT follows a multi-view, component-based modelling approach with a comprehensive way to perform event-based modelling on system components for code generation purposes employing an intermediate ThingML model. Click here to read the publication.


WP4: Large-scale repository and services for low-code engineering


Providing automatic test amplification for executable models.



MDEForgeWL is a complete infrastructure to support the execution of model management opertion workflows that are remotely available as dedicated services. MDEForgeWL consists of i) a DSL and supporting engine for defining and executing user-defined workflows of model management services, and ii) a cluster infrastructure to register new services and make them available for defining workflows. Click here to read the publication.

Model management services

BORA, a model recommendation approach

This approach provides modeling recommendations for LCDPs based on knowledge graphs and N-grams.


BORA-NLP, a model reuse approach based on NLP

This approach enables the reuse of models by processing users' natural language requests.


BORA-Slicer, a model reuse approach based on model slicing

This approach enables cross-level reuse of Low-code artifacts like domain model elements, UI components, domain-related functions, etc., based on model slicing and knowledge graphs.


MER - Modeling Event Recorder

MER (Modeling Event Recorder) is an Eclipse plugin that captures and serializes modeling events from Sirius graphical editor sessions in the XES standard log format. The plugin records user interactions, changes, and actions performed within the Sirius graphical editor, allowing you to analyze and gain insights into the modeling process.


MER Plugin for EcoreTools GSLP Editor

This repository offers an integrated modeling event recorder into Ecore GLSP. It provides a web-based editor for Ecore Models (including Diagrams), with Eclipse Theia as the client. It contains two components. One GLSP language server (Server-side, written in Java) and one GLSP client extension to actually present the diagrams (Using Sprotty).

MER Plugin

WP5: Scalable low-code artefact management

Multi-Parameter Benchmark Framework for Spark Applications

A prototype implementation of a multi-parameter benchmark framework for Spark applications.


Continuous consistency checking of DevOps artefacts prototype

Prototype implementation of continuous consistency checking of DevOps artefacts. Click here to read the publication.


Epsilon static analysis

This repository is built-on the top of Epsilon framework. Currently, it supports following languages
1) Epsilon Object Language (EOL)
2) Epsilon Validation Language (EVL)
3) Epsilon Transformation Language (ETL)


Query Optimisation

Query optimisation is built-on the top of Epsilon framework. It currently supports EOL, EVL and ETL. This optimisation facility provides custom in memory indices using the information extracted from static analysis.


EVL to Viatra mapping prototype

Prototype implementation of EVL to Viatra mapping. Click here to read the publication.



Spark Transformation Engine (SparkTE), previously denoted as SparkTL, is an engine for model transformation written using Apache Spark. SparkTE implementation is based on CoqTL specification. The two tools aims at evolving in symbiosis. Click here to read the publication.



MOMoT selects the best available model transformation chain based on 5 user-objective criteria. These criteria are transformation coverage, complexity,metamodel similarity, model coverage and number of transformation hops. This problem is solved using a multi-objective optimization tool called MOMoT, which is a combinatory platform of model driven approaches and many multi-objective evolutionary algorithms.


Chain optimisation

This tool identifies all the possible model transformation chains based on the available model transformations and metamodel available in a repository/folder. An extended depth-first search is used to compute all possible transformation chains that are taken in a graph-based repository of model transformations and metamodels. In this repository, an optimization process is done on the execution of the model transformation chains. This process elaborates on optimizing the execution of the selected transformation chains, reducing the number of generated target elements and improving the overall execution time.