Skip to content

Getting Started with Epsilon

Epsilon provides a set of languages and tools for tasks such as model-to-text transformation, model-to-model transformation, model validation (all of which extend the same core language), model editing, weaving and visualisation. While some Epsilon tools are Eclipse IDE plugins, most of Epsilon does not depend on the Eclipse IDE and can be used from standard Java applications and from Maven/Gradle builds.

New to Model-Based Software Engineering?

If you are a newcomer to model-based software engineering and the Eclipse modelling ecosystem, you may find this series of lectures useful.

Trying Epsilon in the Playground

You can try most Epsilon languages in the online Epsilon Playground, without needing to download or install anything.

Screenshot of the Epsilon Playground

Using Epsilon as a Java library

The execution engines of Epsilon's languages, the Flexmi parser, and drivers for EMF, UML, XML and Excel are available as standard Java libraries through Maven Central. To get started with parsing and executing Epsilon programs from your Java application:

  • Go to the Epsilon Playground and select one of the examples;
  • Click the Download button and select Java (Maven) or Java (Gradle) from the window that pops up to download a zipped copy of the example. The downloaded zip file includes an Example Java class as well as a pom.xml/build.gradle file with all the Epsilon dependencies;
  • Import the example in your favourite Java IDE (e.g. Eclipse, IntelliJ, VS Code) and run the Example class;
  • Alternatively, follow the instructions in the readme.txt to run the example from command line (you only need to have Java and Maven/Gradle installed);
  • Read this article that introduces Epsilon's Java API.

Epsilon in Maven/Gradle Builds

On some occasions you may need to include model management tasks in your build/CI pipeline (e.g. to validate a model and generate code from it). For such scenarios, Epsilon provides Ant tasks that can be used in the context of Maven and Gradle builds. To get started with running Epsilon from Maven/Gradle builds:

  • Go to the Epsilon Playground and select one of the examples;
  • Click the Download button and select Maven or Gradle from the window that pops up to download a zipped copy of the example. The downloaded zip file includes a pom.xml/build.gradle file with all the Epsilon dependencies and the respective Epsilon Ant tasks;
  • Follow the instructions in the readme.txt to run the example from command line (you only need to have Java and Maven/Gradle installed).

Epsilon in Eclipse

Epsilon provides a rich set of Eclipse plugins for editing, running, profiling and debugging model management programs. It also includes tools for editing, weaving and visualising models. You can install these tools through Epsilon's update site or through the Eclipse Installer.

Epsilon in other IDEs/Editors

Support for syntax highlighting Epsilon programs, Flexmi models and Emfatic metamodels is available for the following IDEs and editors, beyond Eclipse.

VS Code
Sublime