<!DOCTYPE html>
<html>

  <head>
	<meta charset="UTF-8">
	<title>Xtext - Community</title>
	
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<meta name="description"
		content="The website of Eclipse Xtext, an open-source framework for development of programming languages and domain-specific languages">
	<meta name="author" content="Sven Efftinge">
	<meta name="author" content="Miro Spoenemann">
	<!--  styles -->
	<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
	<!--[if lt IE 9]>
	  <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
	<![endif]-->
	
	<!-- Le fav and touch icons -->
	<link rel="shortcut icon" href="/Xtext/images/favicon.png">
	
	<link href="/Xtext/css/bootstrap.css" rel="stylesheet" type='text/css'>
	<link href="/Xtext/css/bootstrap-responsive.css" rel="stylesheet" type='text/css'>
	<link href="/Xtext/css/shield-responsive.css" rel="stylesheet" type='text/css'>
	<link href='/Xtext/css/fonts.css' rel='stylesheet' type='text/css'>
	<link href="/Xtext/css/prettyPhoto.css" rel="stylesheet" media="screen" type='text/css'>
	<link href="/Xtext/css/prettify.css" type="text/css" rel="stylesheet"/>
	<link href="/Xtext/css/style.css" rel="stylesheet" type='text/css'>
	<!-- cover flow -->
	<link href="/Xtext/css/coverflow.css" rel="stylesheet" type='text/css'>
	<!--[if lt IE 9]>
	  <link href="/css/iebugs.css" rel="stylesheet" type='text/css'>
	<![endif]-->

	<!-- BEGIN Cookie Consent
	<link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.css" />
	<script src="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.js"></script>
	<script>
	window.addEventListener("load", function(){
	window.cookieconsent.initialise({
		"palette": {
		"popup": {
		  "background": "#000"
		},
		"button": {
		  "background": "#f1d600"
		}
		},
		"theme": "edgeless",
		"type": "opt-in",
		onInitialise: function (status) {
		  var type = this.options.type;
		  var didConsent = this.hasConsented();
		  if (type == 'opt-in' && didConsent) {
		    // TODO: enable cookies
		  }
		  if (type == 'opt-out' && !didConsent) {
		    // TODO: disable cookies
		  }
		},
		onStatusChange: function(status, chosenBefore) {
		  var type = this.options.type;
		  var didConsent = this.hasConsented();
		  if (type == 'opt-in' && didConsent) {
		    // TODO: enable cookies
		  }
		  if (type == 'opt-out' && !didConsent) {
		    // TODO: disable cookies
		  }
		}, 
		onRevokeChoice: function() {
		  var type = this.options.type;
		  if (type == 'opt-in') {
		    // TODO: disable cookies
		  }
		  if (type == 'opt-out') {
		    // TODO: enable cookies
		  }
		},
		"content": {
		"href": "http://www.eclipse.org/legal/privacy.php"
		}
	})});
	</script>
	END Cookie Consent -->
</head>


  <body>
  
    <header class="site-header">

  <!-- Navbar -->
  <div class="navbar navbar-fixed-top">
    <div class="navbar-inner">
      <div class="container">
        <a class="btn btn-navbar" data-toggle="collapse"
          data-target=".nav-collapse"> <span class="icon-bar"></span> <span
          class="icon-bar"></span> <span class="icon-bar"></span>
        </a> <a class="brand" href="/Xtext/index.html"></a>
        <div class="nav-collapse collapse" style="height: 0px;">
          <ul class="nav">
            <!--li ><a href="/Xtext/news.html">News</a></li-->
            <li ><a href="/Xtext/download.html">Download</a></li>
            <li ><a href="/Xtext/documentation/index.html">Documentation</a></li>
            <li ><a href="/Xtext/community.html">Community</a></li>
            <li class="dropdown">
              <a class="dropdown-toggle" data-toggle="dropdown" href="#">Support &amp; Trainings<span class="caret"></span></a>
              <ul class="dropdown-menu">
                <li><a href="https://www.itemis.com/en/xtext/support-and-team/" target="_blank">itemis</a></li>
                <li><a href="https://typefox.io/trainings-2" target="_blank">TypeFox</a></li>
              </ul>
            </li>
            <li ><a href="http://xtend-lang.org">Xtend</a></li>
          </ul>
          <!--div class="nav pull-right">
            <li ><a><iframe src="https://ghbtns.com/github-btn.html?user=eclipse&repo=xtext&type=star&count=true" frameborder="0" scrolling="0" width="170px" height="20px"></iframe></a></li>
          </div-->
        </div>
        <!--/.nav-collapse -->
      </div>
    </div>
  </div>
  <!-- Navbar End -->

</header>


    	<div id="page">
		<div id="team" class="container clearfix">
			<h2>Resources</h2>
				<hr>
			<div class="row">
				<div class="span1">&nbsp;</div>
				<div class="span9 team">
					<a href="http://www.eclipse.org/forums/index.php?t=thread&frm_id=27" class="anchor-in-div"></a>
					<div class="row">
						<div class="span1 ">
							<img src="/Xtext/images/discussion-circ-darkgray.png" alt="image" class="image_left">
						</div>
						<div class="span2 ">
							<h3>Forum</h3>
						</div>
					<div class="span6 ">
						<p>The <strong>Xtext forum</strong> is the first source for getting answers in case you got stuck.
						The community is very friendly.</p>
					</div>
					</div>
				</div>
				<div class="span1">&nbsp;</div>
			</div>
			<div class="row">
				<div class="span1">&nbsp;</div>
				<div class="span9 team">
					<a href="https://github.com/eclipse/xtext/blob/master/CONTRIBUTING.md#report-an-issue" class="anchor-in-div"></a>
					<div class="row">
						<div class="span1 ">
							<img src="/Xtext/images/bug-circ-darkgray.png" alt="image" class="image_left">
						</div>
						<div class="span2 ">
							<h3>Found a Bug?</h3>
						</div>
					<div class="span6 ">
						<p>Bug reports and enhancement request are tracked at <strong>GitHub.org</strong>. Please 
						explain the problem and provide a reduced but reproducible example.</p>
					</div>
					</div>
				</div>
				<div class="span1">&nbsp;</div>
			</div>
			<div class="row">
				<div class="span1">&nbsp;</div>
				<div class="span9 team">
					<a href="https://github.com/eclipse/xtext" class="anchor-in-div"></a>
					<div class="row">
						<div class="span1 ">
							<img src="/Xtext/images/github-mark-darkgray.png" alt="image" class="image_left">
						</div>
						<div class="span2 ">
							<h3>Github</h3>
						</div>
						<div class="span6 ">
							<p>The Xtext source code is available on <strong>GitHub</strong>. You'll find more information on how to contribute to the project in the README.md contained there.</p>
						</div>
					</div>
				</div>
				<div class="span1">&nbsp;</div>
			</div>
			<div class="row">
				<div class="span1">&nbsp;</div>
				<div class="span9 team">
					<a href="https://twitter.com/intent/user?screen_name=Xtext" class="anchor-in-div"></a>
					<div class="row">
						<div class="span1 ">
							<img src="/Xtext/images/Twitter-bird-darkgray.png" alt="image" class="image_left">
						</div>
						<div class="span2 ">
							<h3>Twitter</h3>
						</div>
						<div class="span6 ">
							<p>If you are on twitter and want to get notified about Xtext, you should consider following <strong>@Xtext</strong>.</p>
						</div>
					</div>
				</div>
				<div class="span1">&nbsp;</div>
			</div>
		</div>
		<br/><br/>
		<div id="zoo" class="container">
			<span class="edit-on-github pull-right">
				<a href="https://github.com/eclipse/xtext/edit/website-published/xtext-website/community.html">Add your project!</a>
			</span>
			<h2>What others have built with Xtext</h2>
			<hr>
			<table class="table table-striped table-condensed">
				<thead>
					<tr>
						<th>Name</th>
						<th>Description</th>
						<th>License</th>
						<th>Category</th>
						<th>Author(s)</th>
					</tr>
				</thead>
				<tbody>

					<tr>
						<td><a href="https://github.com/INTO-CPS-Association/hybrid-cosim">A DSL for Semantic Adaptation</a></td>
						<td>This language allows for quick and sound adaptations to be made for co-simulation units implementing the FMI standard for co-simulation.</td>
						<td>INTO-CPS Association Public License</td>
						<td>Framework</td>
						<td>INTO-CPS Association</td>
					</tr

					<tr>
						<td><a href="http://gemoc.org/ale-lang/">Action Language for EMF</a></td>
						<td>ALE (Action Language for EMF) is an interpreted language to define behaviors on the top of Ecore metamodels. In other words, it makes Ecore metamodels executable.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Fabien Coulon, Didier Vojtisek, Emmanuel Chebbi, Pierre Jeanjean, Erwan Bousse, Benoit Combemale</td>
					</tr>

					<tr>
						<td><a href="http://www.arakhne.org/afc">AFC</a></td>
						<td>AFC is a Java library that provides mathematic primitives, and other useful utility tools. The mathematic primitives
							(vector, point, matrix, shape, etc.) are providing operator overridings for Xtext-based languages.</td>
						<td>Apache 2 License</td>
						<td>Library</td>
						<td>St&eacute;phane Galland, et al</td>
					</tr>

					<tr>
						<td><a href="http://code.google.com/p/alloy4eclipse/">alloy4eclipse</a></td>
						<td>Specification and analysis of models in the Alloy4 language on
							the Eclipse platform.</td>
						<td>LGPL</td>
						<td>Language</td>
						<td>Mohamed Bouragba, Mohamed Said, Maxime Kapusta and Yoann Vasseur</td>
					</tr>

					<tr>
						<td><a href="https://github.com/unicesi/amelia">Amelia DSL</a></td>
						<td>Amelia is a compact DSL tailored for specifying and executing deployment workflows for distributed software systems.</td>
						<td>LGPL-3.0</td>
						<td>Software Deployment</td>
						<td>Miguel Jiménez, Gabriel Tamura</td>
					</tr>

					<tr>
						<td><a href="http://applause.github.io/">APPlause</a></td>
						<td>Open source tool chain to produce native apps for different
							devices such as Android, iPhone and iPad.</td>
						<td>EPL</td>
						<td>Language, Framework</td>
						<td>Heiko Behrens, Peter Friese, et al</td>
					</tr>

					<tr>
						<td><a href="http://www.artop.org/">ARText (part&nbsp;of&nbsp;Artop)</a></td>
						<td>ARText, a textual language for the specification of AUTOSAR
							systems. See the <a href="https://vimeo.com/16768196">very</a> <a href="https://vimeo.com/13154188">cool</a> <a href="https://vimeo.com/12080038">screencasts</a>.</td>
						<td>closed&nbsp;source</td>
						<td>Language</td>
						<td>Sebastian Benz, Dana Wong</td>
					</tr>

					<tr>
						<td><a href="https://docs.avaloq.com/tools/asmd/solution_model_development.htm">Avaloq Solution Model Development (ASMD)</a></td>
						<td>ASMD is a model driven client-server system providing customization tooling for the Avaloq Banking Platform. It supports customization experts managing more than 100k source artefacts in more than 60 DSLs that describe the aspects and behaviour of financial institutions.</td>
						<td>Commercial</td>
						<td>Eclipse IDE</td>
						<td>Avaloq Solution Model Development and Compiler Framework team</td>
					</tr>

					<tr>
						<td><a href="https://github.com/CohesionForce/avro-toolkit">Avro Toolkit</a></td>
						<td>Framework for building Apache Avro schemas and converters from an EMF model.</td>
						<td>EPL 2.0</td>
						<td>Framework</td>
						<td>CohesionForce, Inc</td>
					</tr>

					<tr>
						<td><a href="http://new.axdt.org">Axdt</a></td>
						<td>ActionScript3 development tools. It uses Mirror resources to
							integrate declarations parsed from html and xml ActionScript Docs similar to
							the Xtext Java integration.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Martin Schnabel</td>
					</tr>

					<tr>
						<td><a href="https://github.com/balzac-lang/balzac">Balzac Language</a></td>
						<td>Balzac is a domain-specific language to write Bitcoin transactions. <a href="https://balzac-lang.xyz">Online editor</a> and <a href="https://docs.balzac-lang.xyz/">documentation</a>.</td>
						<td>Apache License 2.0</td>
						<td>Language</td>
						<td>Nicola Atzei</td>
					</tr>

					<tr>
						<td><a href="https://i-bp.github.io/boem/">BOEM. Builder Of EMF Models</a></td>
						<td>The aim of BOEM is to provide an API that eases the creation of EMF Models using Xtend syntax and thus to create 'compiling' models. This helps to a) speed up the creation of tests, b) improve readability, c) improve maintainability when metamodels evolve and d) ease the creation of interconnected models.</td>
						<td>EPL</td>
						<td>Language, Framework</td>
						<td>Arthur Daussy, Jacob Geisel</td>
					</tr>

					<tr>
						<td><a href="http://businessAppTester.com">BusinessAppTester</a></td>
						<td>
							Allows you to reuse JUnit test classes by seperating the data from the
							unit implementation class. Uses Xtext to define test class specific domain
							models.
						</td>
						<td>EPL</td>
						<td>Testing, Framework</td>
						<td>Florian Pirchner, Ekkehard Gentz</td>
					</tr>

					<tr>
						<td><a href="http://www.canappi.com">Canappi</a></td>
						<td>
							Canappi is a Development Hub, focusing on Mobile Application Development, that
							integrates tools, mobile platforms, libraries and back-end services. It is
							based on mdsl, a very compact mobile domain specific language. Platform
							specific code generation happens in on the ClougGen.org platform.
						</td>
						<td>Commercial</td>
						<td>Language</td>
						<td>Jean-Jacques Dubray</td>
					</tr>

					<tr>
						<td><a href="https://docs.avaloq.com/tools/compiler_framework.htm">Compiler Framework</a></td>
						<td>The Compiler Framework (CF) supports state of the art implementations of DSLs for the Avaloq Banking Platform with stand-alone generators for the target platform.</td>
						<td>Commercial</td>
						<td>Framework</td>
						<td>Avaloq Solution Model Development and Compiler Framework team</td>
					</tr>

					<tr>
						<td><a href="https://contextmapper.org">Context Mapper</a></td>
						<td>ContextMapper is an open source framework providing a Domain-specific Language (DSL) for strategic and tactic Domain-driven Design (DDD). It supports bounded context mapping, service decomposition, and PlantUML model generation. The framework components allow software architects and microservice designers to reverse engineers Context Maps from Spring Boot and Docker Compose files, to improve the architecture iteratively, and to convert models into other representations.</td>
						<td>Apache 2.0 License</td>
						<td>Language, Modeling Framework</td>
						<td><a href="https://stefan.kapferer.ch/">Stefan Kapferer</a>, <a href="https://www.ifs.hsr.ch/Olaf-Zimmermann.11623.0.html?&amp;L=4">Olaf Zimmermann</a></td>
					</tr>

					<tr>
						<td><a href="http://code.google.com/p/dom3editor/">dom3editor</a></td>
						<td>
							This is a tool to help edit Dominions 3 mod files. It includes
							context coloring, code completion, error checking and integrated help. You can
							edit using the text editor or the form based entry view.
						</td>
						<td>GPL</td>
						<td>Language</td>
						<td>Larry Moore</td>
					</tr>

					<tr>
						<td><a href="https://github.com/dsldevkit/dsl-devkit">DSL Developer Kit and Runtime Library</a></td>
						<td>JDSL Developer Kit is an extension layer to Xtext built for active Xtext users. It extends Xtext runtime to handle more sophisticated cases in DSL design, to support scaling for larger models and better monitoring and recovery in headless frameworks based on Xtext. DDK comes with a few handy small DSLs helping to standardize implementations of tools for DSLs.
							See also the corresponding <a href="https://www.eclipsecon.org/europe2016/session/what-every-xtext-user-wished-know-industry-experience-implementing-80-dsls.html">session</a> on the EclipseCon Europe 2016 about this project.
						</td>
						<td>EPL 1.0</td>
						<td>Framework</td>
						<td>Avaloq Solution Model Development and Compiler Framework team</td>
					</tr>

					<tr>
						<td><a href="https://github.com/dslmeinte/Xtext2-DSLs">dslmeinte's example DSLs</a></td>
						<td>Various DSLs for technical domains (data modeling, dynamic screens, XSDs,
							WSDLs).</td>
						<td>MIT license</td>
						<td>Example</td>
						<td><a href="http://www.dslconsultancy.com/">Meinte Boersma</a></td>
					</tr>

					<tr>
						<td><a href="http://projects.eclipse.org/projects/modeling.emft.b3/">Eclipse b3</a></td>
						<td>New generation of Eclipse technology to simplify software build and assembly.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Henrik Lindberg</td>
					</tr>

					<tr>
						<td><a href="https://github.com/eclipse/gef/wiki/DOT-User-Guide">Eclipse GEF DOT</a></td>
						<td><a href="https://graphviz.gitlab.io/_pages/doc/info/lang.html">Graphviz DOT language</a> editor. For further information watch the
							<a href="https://www.youtube.com/watch?v=GnSVLNYfGlk">recorded GEF DOT session</a> on the EclipseCon Europe 2018.</td>
						<td>EPL</td>
						<td>Language, Framework</td>
						<td>Fabian Steeg, Michael Clay, Alexander Nyssen, Matthias Wienand, Tamas Miklossy, et al.</td>
					</tr>

					<tr>
						<td><a href="http://www.eclipse.org/gemoc">Eclipse GEMOC Studio</a></td>
						<td>The GEMOC Studio provides generic components for the development, integration, and use of heterogeneous executable modeling languages. It includes execution trace management, model animation, advanced debugging, and heterogeneous model coordination services.</td>
						<td>EPL</td>
						<td>Framework</td>
						<td><a href="https://projects.eclipse.org/projects/modeling.gemoc/who">GEMOC contributors</a></td>
					</tr>

					<tr>
						<td><a href="http://www.eclipse.org/elk">Eclipse Layout Kernel (ELK)</a></td>
						<td>ELK is a collection of diagram layout algorithms implemented in Java and provides ways for the algorithms to be easily used in Eclipse-based applications.</td>
						<td>EPL 2.0</td>
						<td>Library</td>
						<td>Ulf Rüegg, Christoph Daniel Schulze, Miro Spönemann, and lots of contributors</td>
					</tr>

					<tr>
						<td><a href="https://www.eclipse.org/mita/">Eclipse Mita</a></td>
						<td>Eclipse Mita is a programming language that is focused on making Internet-Of-Things things easier to program, especially for developers without an embedded development background. It aims to increase programmer productivity, enables fast exploration of use-cases and tries to make you feel right at home on an embedded device.</td>
						<td>EPL-2.0</td>
						<td>Language, Embedded Systems</td>
						<td>Robin Herrmann, Thomas Kutzer, Simon Wegendt, Christian Weichel et al.</td>
					</tr>

					<tr>
						<td><a href="https://projects.eclipse.org/projects/modeling.emf.mwe">Eclipse Modeling Workflow Engine (MWE2)</a></td>
						<td>The modeling workflow engine supports orchestration of different Eclipse modeling components, such as reading EMF resources, performing operations/transformations on them and writing them back or generating any number of other artifacts out of the information.</td>
						<td>EPL-2</td>
						<td>Language, Framework</td>
						<td>Christian Dietrich, Dennis Huebner, Sebastian Zarnekow</td>
					</tr>

					<tr>
						<td><a href="https://projects.eclipse.org/projects/modeling.smartmdsd">Eclipse SmartMDSD Toolchain</a></td>
						<td>The SmartMDSD Toolchain is an Eclipse-based Integrated Development Environment (IDE) for the model-driven development of component-based robotics software. The SmartMDSD Toolchain provides support and guidance to apply structures and best-practices for the composition of software building blocks to robotics applications.</td>
						<td>EPL-2.0</td>
						<td>Eclipse Modeling Project</td>
						<td>Alex Lotz, Dennis Stampfer, Matthias Lutz, and Christian Schlegel</td>
					</tr>

					<tr>
						<td><a href="https://www.eclipse.org/vorto/">Eclipse Vorto</a></td>
						<td>Eclipse Vorto offers a language to describe semantic models of digital twins, a repository to manage the semantic models, plugins to generate code or API documentation and payload mapping for telemetry data.</td>
						<td>Eclipse Public License v 2.0</td>
						<td>IoT, Language, Device Abstraction, Repository</td>
						<td>Alexander Edelmann, Menahem Raccah Lisei, Kevin Olotu, Somesh Kumar, Tobias Gauss, et al.</td>
					</tr>

					<tr>
						<td><a href="https://github.com/LorenzoBettini/edelta">Edelta</a></td>
						<td>An Xtext DSL for EMF metamodels refactoring and migration.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Lorenzo Bettini</td>
					</tr>

					<tr>
						<td><a href="http://elysium.thsoft.hu">Elysium</a></td>
						<td>LilyPond IDE for Eclipse.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Denes Harmath</td>
					</tr>

					<tr>
						<td><a href="http://code.google.com/p/emf-customizer/">EMF&nbsp;Customizer</a></td>
						<td>EMF Customizer is a model (Ecore based)
							customization/styling/refining CSS like textual DSL (Domain Specific Language)
							targeting MDSD tool chains end users. </td>
						<td>EPL</td>
						<td>Language</td>
						<td>Cedric Vidal</td>
					</tr>

					<tr>
						<td><a href="https://www.eclipse.org/incquery/">EMF&nbsp;IncQuery</a></td>
						<td>High performance graph search for EMF models. EMF-IncQuery is a framework for defining declarative graph queries over EMF models, and executing them efficiently without manual coding in an imperative programming language such as Java.</td>
						<td>EPL</td>
						<td>Language, Framework</td>
						<td><a href="https://projects.eclipse.org/projects/modeling.incquery/who">EMF-IncQuery contributors</a></td>
					</tr>

					<tr>
						<td><a href="https://www.eclipse.org/emf-parsley">EMF&nbsp;Parsley</a></td>
						<td>EMF Parsley is an Eclipse project that provides a set of reusable UI components based on EMF.</td>
						<td>EPL</td>
						<td>Language, Framework</td>
						<td>Lorenzo Bettini, Francesco Guidieri, Vincenzo Caselli</td>
					</tr>

					<tr>
						<td><a href="http://code.google.com/a/eclipselabs.org/p/emf-scaffolding/">EMF&nbsp;Scaffolding</a></td>
						<td>Implementation of the principle of dynamic inplace scaffolding
							with EMF presented in July 2009 <a href="http://www.slideshare.net/cedric.vidal/rmll-eclipse-acceleo-day-mdsd-scaffolding-and-acceleo-cdric-vidal-11">at Eclipse Acceleo Day</a>.
						</td>
						<td>EPL</td>
						<td>Language, Framework</td>
						<td>Cedric Vidal and Jerome Benois</td>
					</tr>

					<tr>
						<td><a href="https://www.atlanmod.org/emfviews/">EMF&nbsp;Views</a></td>
						<td>EMF Views is an Eclipse plugin that brings the concept of database views to the modeling world. Model views (focusing on parts of a model and/or combining several models) can be created and then navigated/queried/used as regular models for further model transformation, code generation, etc.</td>
						<td>EPL, GPL</td>
						<td>Language, Framework</td>
						<td>Florent Marchand de Kerchove, Hugo Bruneliere</td>
					</tr>

					<tr>
						<td><a href="https://emoflon.org/">eMoflon</a></td>
						<td>eMoflon is a tool suite for Model-Driven Engineering (MDE) that provides a range of visual and formal languages for (meta)modelling and model management.</td>
						<td>GPL 3.0 and EPL 2.0</td>
						<td>Model Transformation Framework</td>
						<td>Anthony Anjorin, Sebastian Ehmes, Lars Fritsche, Nils Weidmann</td>
					</tr>

					<tr>
						<td><a href="http://www.eclipse.org/etrice/">eTrice</a></td>
						<td>eTrice is a Modeling Tool for distributed eventdriven realtime systems based on
							Realtime Object Oriented Modeling (ROOM), not UML. Textual and graphical ROOM
							editors, codegenerators and runtime libraries for Java, C++ and C
							will be provided.</td>
						<td>EPL</td>
						<td>Language, Framework</td>
						<td>Henrik Rentz-Reichert, Thomas Schuetz</td>
					</tr>

					<tr>
						<td><a href="https://github.com/eventB-Soton/XEventB">Event-B CamilleX</a></td>
						<td>This feature provides Xtext-based editors for Event-B components within the Rodin Platform (http://wiki.event-b.org/). It also extends the Event-B method for compositional modelling.</td>
						<td>Eclipse Public License v1.0</td>
						<td>System Modelling</td>
						<td>Michael Butler, Dana Dghaym, Thai Son Hoang, Asieh Salehi-Fathabadi, Colin Snook</td>
					</tr>

					<tr>
						<td><a href="http://fj-eclipse.sourceforge.net/">fj-eclipse</a></td>
						<td>An Eclipse-based IDE for Featherweight Java, implemented using Xtext.</td>
						<td>GPL</td>
						<td>Language</td>
						<td>Lorenzo Bettini</td>
					</tr>

					<tr>
						<td><a href="http://opcoach.github.io/genModelAddon/">Genmodel addon</a></td>
						<td>This project is used to separate properly the EMF generated code and your developed code.</td>
						<td>Eclipse Public License 1.0</td>
						<td>Code Generator</td>
						<td>Olivier Prouvost (OPCoach) olivier@opcoach.com</td>
					</tr>

					<tr>
						<td><a href="https://github.com/cloudsmith/geppetto">Geppetto</a></td>
						<td>Integrated development environment for the Puppet System Admin tools. (The
							PP manifest language is Ruby like).</td>
						<td>EPL, Apache</td>
						<td>Language</td>
						<td>Henrik Lindberg, Cloudsmith Inc.</td>
					</tr>

					<tr>
						<td><a href="https://github.com/intuit/graphql-xtext">graphql-xtext</a></td>
						<td>A GraphQL SDL (schema definition language) lexer, parser, and validator that generates a traversable Abstract Syntax Tree from your GraphQL schema. GraphQL-Xtext will generate pure Java Objects that can be used at runtime.</td>
						<td>Apache 2 License</td>
						<td>Language</td>
						<td>Ashpak Shaikh, Bhavin Shah, Carlo Aureus, Samuel Ko</td>
					</tr>

					<tr>
						<td><a href="https://github.com/CohesionForce/hla-toolkit">HLA Toolkit</a></td>
						<td>Toolkit for working with High Level Architecture (HLA) Federated Object Models and generating a logging federate.</td>
						<td>EPL 2.0</td>
						<td>Framework</td>
						<td>CohesionForce, Inc</td>
					</tr>

					<tr>
						<td><a href="https://github.com/japkit/japkit">Japkit</a></td>
						<td>Japkit is an annotation processor that allows to develop Java code generators by using code templates written in Java with some annotations. There is no need to write any imperative code, which makes the code generators short and concise and so eases their maintenance.</td>
						<td>Apache 2 License</td>
						<td>Tool</td>
						<td>Stefan Ocke</td>
					</tr>

					<tr>
						<td><a href="http://community.jaspersoft.com/project/jaspersoft-studio">Jaspersoft Studio, Report Designer for JasperReports</a></td>
						<td>The Expression Editor allows to compose Java-like expressions enriched with JasperReports specific tokens. 
							The SQL Query Designer, in text mode, allows to edit simple and advanced SQL expressions.</td>
						<td>EPL</td>
						<td>Report Designer</td>
						<td>Jaspersoft Studio Team (Veaceslav Chicu, Massimo Rabbi, Marco Orlandin and Giulio Toffoli)</td>
					</tr>

					<tr>
						<td><a href="https://github.com/itemis/jbc">JBC</a></td>
						<td>JBC is an Eclipse plugin that enables the developer to view and edit files containing java byte code (*.class) inside Eclipse.</td>
						<td>EPL 1.0</td>
						<td>Developer Tool</td>
						<td>Arne Deutsch</td>
					</tr>

					<tr>
						<td><a href="http://jnario.org/">Jnario</a></td>
						<td>Executable Specifications for Java. See the XtextCast (<a href="http://xtextcasts.org/episodes/9-jnario-test-framework">slides</a>, <a href="https://www.youtube.com/watch?v=j-IouNAkGvw&feature=youtu.be">video</a>) and the <a href="https://www.youtube.com/watch?v=jCgPfxaY8XQ">recorded EclipseCon session</a> about this project.</td>
						<td>Eclipse Public License v1.0</td>
						<td>Testing, Test-driven Development (TDD)</td>
						<td>Sebastian Benz, Birgit Engelmann</td>
					</tr>

					<tr>
						<td><a href="http://www.jolie-lang.org/">Joliepse IDE</a></td>
						<td>Joliepse is an Integrated Development Environment (IDE) for the JOLIE
							programming language, the first full-fledged programming language based upon
							the service-oriented programming paradigm and support classes.</td>
						<td>GPL</td>
						<td>Language</td>
						<td>Diego Castronuovo (castronu at gmail dot com)</td>
					</tr>

					<tr>
						<td><a href="https://github.com/nittka/Jtag">Jtag</a></td>
						<td>Lightweight image tagging.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Alexander Nittka</td>
					</tr>

					<tr>
						<td><a href="https://diverse-project.github.io/k3/">Kermeta 3</a></td>
						<td>K3 is an extension of Xtend programming language. It allows to "re-open" the classes generated from an Ecore metamodel using annotations in order to weave new features and operations.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Inria/IRISA</td>
					</tr>

					<tr>
						<td><a href="http://www.rtsys.informatik.uni-kiel.de/en/research/kieler/">KIELER</a></td>
						<td>An evaluation platform for new methods in model-based software
							design (automatic layout, graphical / textual dynamic views, focus and context,
							simulation, codegen,...).</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Rtsys group, Dep. of Computer Science, Uni Kiel</td>
					</tr>

					<tr>
						<td><a href="https://github.com/mduft/lcdsl">Launch Configuration DSL (LcDsl)</a></td>
						<td>LcDsl provides a way of defining Eclipse launch configurations in a human readable textual form. This improves maintainability and eases versioning/merging of launch configurations.</td>
						<td>Eclipse Public License 1.0</td>
						<td>Eclipse IDE</td>
						<td>Markus Duft</td>
					</tr>

					<tr>
						<td><a href="http://amishne.github.io/llvm-ir-editor/">LLVM IR SDK</a></td>
						<td>A rich LLVM IR editor plugin for Eclipse.</td>
						<td>BSD</td>
						<td>Language</td>
						<td>Alon Mishne</td>
					</tr>

					<tr>
						<td><a href="http://code.google.com/p/llvm4e/">LLVM4e</a></td>
						<td>Xtext-based Eclipse editor for LLVM (Low Level Virtual Machine)
							Assembly Language *.ll files.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Cedric Vidal</td>
					</tr>

					<tr>
						<td><a href="http://logicals.com/">logi.CAD 3</a></td>
						<td>logi.CAD 3 is a tool for programming a wide variety of PLCs (Programmable Logic Controllers) according to the industry standard IEC 61131-3. It is an Eclipse RCP based (E3/E4) integrated development environment (IDE) using Xtext for implementing the editors for the IEC programming languages ST (Structured Text), FBD (Function Block Diagram) and SFC (Sequential Function Chart).</td>
						<td>Commercial</td>
						<td>Language</td>
						<td>logi.cals Austria (http://logicals.com)</td>
					</tr>

					<tr>
						<td><a href="http://mads.sourceforge.net">MADS</a></td>
						<td>
							MADS (Multipurpose Agricultural Data System) is a free open-source tool
							for modelling and analysis of agricultural activities - crops, livestock,
							forestry and others - in developing countries, at sector, regional or project
							level.
						</td>
						<td>EPL, GPL</td>
						<td>RCP Application</td>
						<td>Michel Simeon</td>
					</tr>

					<tr>
						<td><a href="https://github.com/xtext/maven-xtext-example">Maven Xtext Example</a></td>
						<td>A small example to show how to configure a Maven build for an Xtext language and how to use it from Maven and Gradle.</td>
						<td>EPL-2</td>
						<td>Example</td>
						<td>Christian Dietrich, Dennis Huebner</td>
					</tr>

					<tr>
						<td><a href="http://www.mechatronicuml.org">MechatronicUML Website</a>, <a href="https://svn-serv.cs.upb.de/mechatronicuml/">MechatronicUML SVN</a></td>
						<td>
							MechatronicUML is a free open-source tool suite 
							that offers language, process and tooling to design software for networked cyber-physical systems.
							We offer Xtext grammars for: Action Language, API Description, DOT/ Graphviz, LPSolve, MTCTL, Model Dependencies.
						</td>
						<td>EPL</td>
						<td>Language, Tool Suite</td>
						<td>Project Group Mechatronic Systems Design, Fraunhofer Institute for Production Technology IPT; Software Engineering Group, Heinz Nixdorf Institute, University of Paderborn</td>
					</tr>

					<tr>
						<td><a href="http://melange.inria.fr/">Melange Language</a></td>
						<td>Melange is a language workbench that provides a modular approach for assembling, integrating, and customizing multiple domain-specific language (DSL) specifications and implementations.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>T. Degueule, F. Coulon, D. Vojtisek, E. Bousse, A. Blouin, et al</td>
					</tr>

					<tr>
						<td><a href="http://www.openhub.net/p/mod4j/">mod4j</a></td>
						<td>Open source DSL-based environment for developing administrative
							enterprise applications.</td>
						<td>EPL</td>
						<td>Language, Framework</td>
						<td>Jos Warmer</td>
					</tr>

					<tr>
						<td><a href="http://modulestudio.de/en">ModuleStudio</a></td>
						<td>A DSL with tooling based on Sirius and Xtext to describe structure and behaviour of web applications.
							The models are used to generate extensions for a PHP-based web application framework.</td>
						<td>closed&nbsp;source</td>
						<td>Language, Tool Suite</td>
						<td>Axel Guckelsberger</td>
					</tr>

					<tr>
						<td><a href="https://www.eclipse.org/n4js/">N4JS</a></td>
						<td>N4JS is a general-purpose programming language based on ECMAScript with several additional features. In particular, N4JS adds a static type system as reliable as that of Java, but with the flexibility of JavaScript.</td>
						<td>EPL-1.0</td>
						<td>Language</td>
						<td>Eclipse N4JS Project, enfore AG</td>
					</tr>

					<tr>
						<td><a href="http://metrikforge.informatik.hu-berlin.de/projects/nanoworkbench/">NanoWorkbench</a></td>
						<td>A Domain-specific Workbench (DSM) for the development of optical
							nanostructures. Especially used for the description of simulations and
							experiments.
						</td>
						<td>GPL</td>
						<td>Language, Documentation</td>
						<td>Siamak Haschemi (haschemi@informatik.hu-berlin.de), Martin Schmidt
							(schmidma@informatik.hu-berlin.de), Arif Wider
							(wider@informatik.hu-berlin.de)</td>
					</tr>

					<tr>
						<td><a href="http://code.google.com/a/eclipselabs.org/p/nusmv-tools/">nusmv-tools</a></td>
						<td>The nusmv-tools project provides a set of tools for the model checker
							<a href="http://nusmv.fbk.eu/">NuSMV</a>. Xtext is used to create an Eclipse
							editor for the NuSMV input language. The editor is further enhanced by static
							analysis checks (shown as Eclipse error markers) performed by an OSGi-fied
							version of NuSMV itself. Watch the <a href="https://vimeo.com/21637768">screencast</a>.
						</td>
						<td>EPL</td>
						<td>Language</td>
						<td><a href="mailto://siamak@haschemi.org">Siamak Haschemi</a></td>
					</tr>

					<tr>
						<td><a href="http://wiki.eclipse.org/MDT/OCL">OCL</a></td>
						<td>Editors for OCL expressions, documents, libraries. Standalone or
							embedded in Ecore.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Ed Willink</td>
					</tr>

					<tr>
						<td><a href="https://github.com/atb/pt.isep.dsl.puml">PlantUML DSL</a></td>
						<td>An open-source and academic project which aim is to provide an Xtext-based DSL for PlantUML.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Alexandre Braganca</td>
					</tr>

					<tr>
						<td><a href="http://www.gentleware.com/poseidon-for-dsls.html">Poseidon for DSLs</a></td>
						<td>Framework for creating graphical tools for DSLs, based on internal
							Xtext models. Poseidon for UML 8.0 as a sample DSL platform.
						</td>
						<td>commercial</td>
						<td>Framework</td>
						<td>Gentleware AG</td>
					</tr>

					<tr>
						<td><a href="https://github.com/Protelis/Protelis">Protelis</a></td>
						<td>Protelis is a programming language aiming to produce reliable and robust collective behavior from uncoordinated local interactions among an assortment of different potentially mobile devices. Protelis is grounded on the paradigm of <i>aggregate programming</i>, a way of thinking about and decomposing problems that can be solved with a network of distributed sensors and computers.</td>
						<td>GPL with linking exception</td>
						<td>Language</td>
						<td>Danilo Pianini, Jacob Beal, Matteo Francia, and others</td>
					</tr>

					<tr>
						<td><a href="http://code.google.com/p/protobuf4e/">protobuf4e</a></td>
						<td>Editor for Google's Protocol Buffers data interchange file
							format. </td>
						<td>EPL</td>
						<td>Language</td>
						<td>Cedric Vidal</td>
					</tr>

					<tr>
						<td><a href="http://www.pxdoc.fr">pxDoc</a></td>
						<td>pxDoc is a Domain Specific Language to design document generators. Since it is based on Xbase, it allows to implement document generators for any data that can be accessed with Java.</td>
						<td>Commercial, free for personal use</td>
						<td>Language, Framework</td>
						<td>eXtreme Modeling Software</td>
					</tr>

					<tr>
						<td><a href="http://wiki.eclipse.org/QVTd">QVTc and QVTr</a></td>
						<td>Editors for QVT Core and Relational languages.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Ed Willink</td>
					</tr>

					<tr>
						<td><a href="https://github.com/LeKaitoW/raox">Rao X</a></td>
						<td>This project is an implementation of the RAO modeling language in Eclipse, using Xbase.</td>
						<td>MIT</td>
						<td>Simulation System</td>
						<td>Andrey Urusov, Pavel Bogachev, Kirill Alexandrovsky, Olga Zudina, Alexey Chernov and other contributors.</td>
					</tr>

					<tr>
						<td><a href="http://rapid-api.org/rapid-ml">RAPID-ML</a></td>
						<td>RAPID-ML is a domain-driven API modeling language that puts data modeling at the center
							of REST API design.  With RAPID-ML, you can describe data types naturally with an expressive, 
							technology-independent modeling language, and adapt shared models to each API with just the 
							right flexibility to bend the model, not break it.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Ted Epstein, Tanya Fesenko</td>
					</tr>

					<tr>
						<td><a href="https://github.com/zazuko/rdf-mapping-dsl-user">RDF Mapping DSL</a></td>
						<td>A friendly language for writing data mappings to <a href="https://en.wikipedia.org/wiki/Resource_Description_Framework">RDF</a>. Includes generators for R2RML, RML, CARML and CSVW output.</td>
						<td>Commercial, free for personal use</td>
						<td>Language</td>
						<td><a href="https://zazuko.com/">Zazuko GmbH</a></td>
					</tr>

					<tr>
						<td><a href="http://sourceforge.net/projects/rng-eclipse/">RELAX NG for Eclipse</a></td>
						<td>Provides support for editing RELAX NG documents in the Eclipse
							IDE. Integrates with standard WST XML editor to provide content completion and
							validation of edited XML file based on it's RELAX NG schema.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Dave Carver</td>
					</tr>

					<tr>
						<td><a href="https://github.com/NielsLiisberg/RPG-lexer">RPG Lexer (IBM ILE RPG)</a></td>
						<td>This project is for tooling and better understanding of the ILE RPG language. Tooling like plug in for 100% free-RPG editors running in i.e. Eclipse with code completion etc. or even to build transpilers to create C, C# or JAVA code from RPG.</td>
						<td>MIT License</td>
						<td>Tool</td>
						<td>Niels Liisberg</td>
					</tr>

					<tr>
						<td><a href="https://github.com/heutelbeck/sapl-policy-engine">SAPL Policy Engine</a></td>
						<td>A reactive policy engine implementing attribute-based access control (ABAC). The engine features support for publish-subscribe authorization and a deep Spring integration. https://sapl.io</td>
						<td>Apace 2.0</td>
						<td>Security</td>
						<td>Dominic Heutelbeck</td>
					</tr>

					<tr>
						<td><a href="http://www.sarl.io">SARL</a></td>
						<td>SARL is a general-purpose agent-oriented language. It aims at providing the fundamental abstractions for 
							dealing with concurrency, distribution, interaction, decentralization, reactivity, autonomy and dynamic 
							reconfiguration. The language is platform- and architecture-independent. 
							The default execution environment is the <a href="http://www.janusproject.io">Janus platform</a>.</td>
						<td>Apache 2 License</td>
						<td>Language, Framework</td>
						<td>Sebastian Rodriguez, Nicolas Gaud, St&eacute;phane Galland</td>
					</tr>

					<tr>
						<td><a href="http://sculptorgenerator.org">Sculptor</a></td>
						<td>You express your design intent in a textual DSL, from which
							Sculptor generates high quality Java code and configuration.</td>
						<td>Apache 2 License</td>
						<td>Language, Framework</td>
						<td>Torsten Juergeleit, Patrik Nordwall and others</td>
					</tr>

					<tr>
						<td><a href="https://github.com/crapo/sadlos2/wiki">Semantic Application Design Language (SADL)</a></td>
						<td>SADL is a controlled-English ontology language and an IDE for building models in that language. SADL models are translated directly into OWL plus rules plus other constructs for model testing and maintenance.</td>
						<td>Eclipse Public License</td>
						<td>Semantic Modeling</td>
						<td>GE Research</td>
					</tr>

					<tr>
						<td><a href="http://sadl.sourceforge.net/">Semantic Application Design Language (SADL) Version 2</a></td>
						<td>The Semantic Application Design Language (SADL) is a language for building
							semantic models and expressing rules that capture additional domain
							knowledge. The SADL-IDE (integrated development environment) is a set of
							Eclipse plug-ins that support the editing and testing of semantic models
							using the SADL language. </td>
						<td>EPL</td>
						<td>Language</td>
						<td>Andrew Crapo, John Interrante, David Bracewell, Saurabh Gupta</td>
					</tr>

					<tr>
						<td><a href="https://github.com/xtext/seven-languages-xtext">Seven Languages with Xtext</a></td>
						<td>An example project of seven languages illustrating the power and flexibility of Xtext.</td>
						<td>EPL-2</td>
						<td>Example</td>
						<td>Christian Dietrich, Holger Schill, Sebastian Zarnekow, Dennis Huebner</td>
					</tr>

					<tr>
						<td><a href="http://code.google.com/a/eclipselabs.org/p/spray/">Spray</a></td>
						<td>This project aims to provide Domain Specific Languages to describe
							Visual DSL Editors against the Graphiti runtime, and provide code generation
							(with Xtend2) to create the boilerplate code for realizing the implementation
							against the Graphiti framework.</td>
						<td>EPL 1.0</td>
						<td>Framework</td>
						<td>Jos Warmer, Karsten Thoms et. al.</td>
					</tr>

					<tr>
						<td><a href="http://swrtj.sourceforge.net/">SWRTJ: Sugared Welterweight Record-Trait Java</a></td>
						<td>A Java-like language where units of objects' functionality are modeled by
							traits and by records (a construct that complements traits to model the state
							part of objects).</td>
						<td>GPL</td>
						<td>Language</td>
						<td>Fabio Strocco, Lorenzo Bettini</td>
					</tr>

					<tr>
						<td><a href="https://github.com/eclipse-cbi/targetplatform-dsl">Target Platform Definition DSL and Generator</a></td>
						<td>The Target Platform Definition DSL and Generator project provides an Xtext-based DSL with an advanced Eclipse editor and a generator to generate *.target files from the DSL that Eclipse PDE is able to read to provision a Target Platform.</td>
						<td>EPL</td>
						<td>Tool</td>
						<td>Mikael Barbero and others</td>
					</tr>

					<tr>
						<td><a href="https://github.com/nittka/terminology">Terminology</a></td>
						<td>Lightweight terminology management. If spreadsheet is not enough and term bases are overkill, consider this plugin with advanced search functionality and hook for custom exporters.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Alexander Nittka</td>
					</tr>

					<tr>
						<td><a href="https://github.com/kuniss/xtext-ide-extensions">TextMate Grammars for the Xtext Language</a></td>
						<td>TextMate grammars for Xtext language highlighting support in different editors, e.g. VS Code, ACE, Atom, Pygments, Rouge, Sublime 3 (except for VS Code, all not tested).</td>
						<td>EPL-2.0</td>
						<td>Editor Support</td>
						<td>Denis Kuniß</td>
					</tr>

					<tr>
						<td id="name"><a href="http://marketplace.eclipse.org/content/vclipse/">VClipse</a></td>
						<td>VClipse is an Eclipse-based integrated development environment (IDE)
							for product modeling for the SAP Variant Configurator (VC). VClipse supports the
							specification of objects and dependencies in a textual domain specific language
							called VCML. This enables the use of standard text comparison tools and version
							control systems in the model development process.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Tim Geisler, Aleksey&nbsp;Shumilin</td>
					</tr>

					<tr>
						<td><a href="https://www.eclipse.org/viatra/">VIATRA</a></td>
						<td>An Event-driven and Reactive Model Transformation Platform. 
							The VIATRA framework supports the development of model transformations with specific focus on event-driven, reactive transformations.
							Building upon the incremental query support of the EMF-IncQuery project, VIATRA offers a language to define transformations and
							a reactive transformation engine to execute certain transformations upon changes in the underlying model.
						</td>
						<td>EPL</td>
						<td>Language, Framework</td>
						<td><a href="https://projects.eclipse.org/projects/modeling.viatra/who">VIATRA contributors</a></td>
					</tr>

					<tr>
						<td><a href="https://github.com/kuniss/xtext-ide-extensions/tree/master/xtext-vscode-extension">VS Code extension for Xtext Language</a></td>
						<td>Xtext Language support for VS code utilizing a Language Server built with Xtext framework itself. Installation via <a href="https://marketplace.visualstudio.com/items?itemName=Grammarcraft.xtend-lang">VS Marketplace</a>.</td>
						<td>EPL-2.0</td>
						<td>IDE Extension</td>
						<td>Denis Kuniß</td>
					</tr>

					<tr>
						<td><a href="https://www.wollok.org/">Wollok</a></td>
						<td>Wollok is a programming language and an IDE specially designed for teaching initial OOP courses. Students can program from the beginning incrementally adding every OO concept.</td>
						<td>LGPLv3</td>
						<td>Language, Education</td>
						<td><a href="http://www.uqbar.org/">Uqbar</a></td>
					</tr>

					<tr>
						<td><a href="https://github.com/jcabot/WordPress-Plugin-DSL">WordPress Plugins DSL</a></td>
						<td>A simple DSL to generate scaffolding code for WordPress Plugins.</td>
						<td>EPL</td>
						<td>Generator</td>
						<td><a href="https://jordicabot.com/">Jordi Cabot</a></td>
					</tr>

					<tr>
						<td><a href="https://github.com/team-worthwhile/worthwhile">Worthwhile</a></td>
						<td>Worthwhile is an IDE built around a simple WHILE language that
							integrates editing, running, debugging and verifying programs using
							Microsoft's Z3 prover.
						</td>
						<td>3-Clause BSD</td>
						<td>Language</td>
						<td>Leon Handreke, Chris Hiatt, Stefan Orf, Joachim Priesner, Fabian
							Ruch, Matthias Wagner</td>
					</tr>

					<tr>
						<td><a href="https://github.com/nittka/Xarchive">Xarchive</a></td>
						<td>Lightweight document management.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Alexander Nittka</td>
					</tr>

					<tr>
						<td><a href="https://xatkit.com/">Xatkit</a></td>
						<td>Xatkit is a model-based bot development framework that provides a set of DSLs to specify the behavior, backend actions, and execution logic of your (chat) bot. Xatkit embeds an execution engine that manages the deployment and execution of the specified bot.</td>
						<td>EPL.v2</td>
						<td>Bot Development</td>
						<td>Jordi Cabot, Gwendal Daniel</td>
					</tr>

					<tr>
						<td><a href="https://wiki.eclipse.org/Xcore">Xcore</a></td>
						<td>Xcore is an extended concrete syntax for Ecore that, in combination with Xbase, transforms it into a fully fledged programming language with high quality tools reminiscent of the Java Development Tools. You can use it not only to specify the structure of your model, but also the behavior of your operations and derived features as well as the conversion logic of your data types.</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Ed Merks</td>
					</tr>

					<tr>
						<td><a href="http://www.gipsys.ca/xdgl.htm">xDGL Data Generation Language</a></td>
						<td>xDGL is a free plugin on Eclipse Helios 3.6 fully compatible with
							Eclipse Data Tools Platform DTP. Works with dozens of RDBMS
							databases. xDGL was invented by Abubaker Mahmoud, a Canadian Computer expert.
							xDGL is simple to learn and fast to execute and is designed to solve the problem 
							of most data generators systems works in english. xDGl works in any language that 
							could be written in the UTF-8 encoding. xDGL is the first Java Data Generation Language, 
							the first Eclipse language for Data Genration. xDGL is built in Java, Eclipse and the great Xtext
							Framework.</td>
						<td>Commercial</td>
						<td>Language</td>
						<td><a href="mailto://shangab@gmail.com">Abubaker Mahmoud</a></td>
					</tr> 

					<tr>
						<td><a href="https://github.com/rodchenk/xenia">Xenia</a></td>
						<td>DSL for the rapid creation of static websites based on a sitemap with precompiled templates.</td>
						<td>MIT</td>
						<td>Language, Web Development</td>
						<td>Mischa Rodchenkov</td>
					</tr>

					<tr>
						<td><a href="http://xsemantics.sourceforge.net/">Xsemantics</a></td>
						<td>XSemantics is a DSL (implemented in Xtext) for writing type systems,
							reduction rules, interpreters (and in general relation rules) for languages
							implemented in Xtext. It generates Java code that can be used in your
							language implemented in Xtext for scoping and validation (it can also generate
							a validator in Java). It is the successor of XTypeS.
						</td>
						<td>EPL</td>
						<td>Language</td>
						<td>Lorenzo Bettini</td>
					</tr>

					<tr>
						<td><a href="https://github.com/msbarry/Xtest">Xtest</a></td>
						<td>Xtest is a unit-testing domain-specific scripting language for Java.
							Tests are run while you type and any time a related file is saved, marking
							exceptions thrown and failed assertions as errors to immediately notify you of
							test failures.
						</td>
						<td>EPL</td>
						<td>Testing, Language</td>
						<td>Michael Barry</td>
					</tr>

					<tr>
						<td><a href="https://github.com/itemis/itemis-blog/tree/combining-emf-models-with-xtext-dsls">Xtext EMF Integration</a></td>
						<td>An example project demonstrating how to combine EMF models with Xtext DSLs. See also the <a href="https://blogs.itemis.com/en/combining-emf-models-with-xtext-dsls">blog post</a> about this topic.</td>
						<td>EPL-2</td>
						<td>Example</td>
						<td>Tamas Miklossy</td>
					</tr>

					<tr>
						<td><a href="http://code.google.com/a/eclipselabs.org/p/xtext-forms-integration/">Xtext Forms Integration</a></td>
						<td>Sample RCP application to demonstrate how Xtext editors can be
							integrated within Eclipse UI forms.</td>
						<td>EPL</td>
						<td>Framework</td>
						<td>Mikael Barbero</td>
					</tr>

					<tr>
						<td><a href="https://github.com/itemis/itemis-blog/tree/gef_graphical_views_on_xtext_dsls">Xtext GEF5 Integration</a></td>
						<td>Example projects demonstrating the usage of the Eclipse GEF DOT Graph View to add graphical representations to Xtext DSLs. See also the <a href="https://blogs.itemis.com/en/eclipse-gef-dot-graphical-views-on-xtext-dsls">blog post</a> about this topic.</td>
						<td>EPL-2</td>
						<td>Example</td>
						<td>Tamas Miklossy</td>
					</tr>

					<tr>
						<td><a href="https://github.com/xtext/xtext-gradle-plugin">Xtext Gradle Plugins</a></td>
						<td>A set of Gradle plugins to build and use Xtext-based languages and the Xtend programming language.</td>
						<td>EPL-1.0</td>
						<td>Tool</td>
						<td>Stefan Oehme, Christian Dietrich</td>
					</tr>

					<tr>
						<td><a href="https://github.com/itemis/xtext-languageserver-example">Xtext Languageserver Example</a></td>
						<td>An example showing the Visual Studio Code integration of Xtext using the Microsoft Language Server Protocol.</td>
						<td>EPL-2.0</td>
						<td>Example</td>
						<td>Christian Dietrich, Holger Schill, Franz Becker</td>
					</tr>

					<tr>
						<td><a href="https://github.com/itemis/itemis-blog/tree/referencing-uml-elements-from-xtext-dsls">Xtext UML Integration</a></td>
						<td>An example project demonstrating how to reference UML elements from Xtext DSLs. See also the <a href="https://blogs.itemis.com/en/how-to-reference-uml-elements-from-xtext-dsls">blog post</a> about this topic.</td>
						<td>EPL-2</td>
						<td>Example</td>
						<td>Tamas Miklossy</td>
					</tr>

					<tr>
						<td><a href="https://github.com/OLibutzki/xtext.tools">Xtext Tools</a></td>
						<td>Xtext Tools provides Eclipse views to explore the underlying node model and the semantic model of DSL files. Especially for language developers this is quite handy.</td>
						<td>EPL</td>
						<td>IDE Extension</td>
						<td>Oliver Libutzki</td>
					</tr>

					<tr>
						<td><a href="http://code.google.com/a/eclipselabs.org/p/xtext-typesystem/">Xtext Typesystem Framework</a></td>
						<td>A framework that supports the efficient implementation of typesystem
							rules for Xtext languages. Especially useful if your languages has
							expressions, statements, different (combinable) data types.</td>
						<td>EPL</td>
						<td>Framework</td>
						<td><a href="mailto:voelter@acm.org">Markus Voelter</a></td>
					</tr>

					<tr>
						<td><a href="https://xtext-demo.itemis.de/">Xtext Web Demo</a></td>
						<td>Examples projects demonstrating the usage of Xtext on the web. The source code is hosted on the corresponding <a href="https://github.com/eclipse/xtext-web">GitHub repository</a>.</td>
						<td>EPL-2</td>
						<td>Example</td>
						<td>Christian Dietrich, Miro Spönemann</td>
					</tr>

					<tr>
						<td><a href="http://xtypes.sourceforge.net/">XTypeS</a></td>
						<td>A DSL for writing type systems for languages implemented in Xtext. It
							generates Java code that can be used in your language implemented in Xtext
							for scoping and validation (XTypeS also generates a validator in Java).
						</td>
						<td>GPL</td>
						<td>Language</td>
						<td>Lorenzo Bettini</td>
					</tr>

					<tr>
						<td><a href="http://www.yakindu.org">Yakindu Statechart Tools</a></td>
						<td>
							YAKINDU Statechart Tools (SCT) provides an integrated modeling
							environment for the specification and development of reactive, event-driven
							systems based on the concept of statecharts. It is an easy to use tool that
							features sophisticated graphical state chart editing, validation and simulation
							of statecharts as well as code generation.
						</td>
						<td>EPL</td>
						<td>Tool</td>
						<td>Axel Terfloth, Andreas M&uuml;lder, et al</td>
					</tr>

					<tr>
						<td><a href="https://github.com/theia-ide/yang-lsp">YANG Language Server</a></td>
						<td>A language server for the YANG data modeling language.</td>
						<td>Apache License 2.0</td>
						<td>Language Server</td>
						<td>TypeFox, Ericsson</td>
					</tr>

					<tr>
						<td><a href="https://github.com/AlexandreRio/ytpdsl/">YTP DSL</a></td>
						<td>YTP DSL is a language to guide random video editing. The main goal is to produce a fun result based on a video library, guidance on duration and various video filters.</td>
						<td>GPL-3</td>
						<td>Language, Tool</td>
						<td>Alexandre Rio</td>
					</tr>
<!--
					<tr>
						<td>AMP Agent Modeling Platform</td>
						<td>extensible frameworks and exemplary tools for representing,
							editing, generating, executing and visualizing agent-based models (ABMs) and
							any other domain requiring spatial, behavioral and functional features</td>
						<td>http://www.eclipse.org/amp/</td>
						<td>EPL</td>
						<td>Framework</td>
						<td>Metascape, LLC</td>
					</tr>

					<tr>
						<td>EMF Query 2</td>
						<td>search and retrieval of emf model elements in a structured
							format with an additional advantage that resource loading is minimized during
							execution </td>
						<td>http://www.eclipse.org/modeling/emf/?project=query2</td>
						<td>EPL</td>
						<td>Language</td>
						<td>?</td>
					</tr>

					<tr>
						<td>CamelSplit</td>
						<td>Text-based DSL Editor for Camel and Eclipse</td>
						<td>http://code.google.com/p/camel-extra/wiki/CamelSpit</td>
						<td>?</td>
						<td>Language</td>
						<td>Oisin Hurley</td>
					</tr>
-->
				</tbody>
				<tfoot></tfoot>
			</table>
		</div>
		<div id="sponsors" class="container">
			<h2>Sponsors</h2>
			<hr>
			<div class="row">
				<div class="span1">&nbsp;</div>
				<div class="span5">
					<p><b>YourKit</b> is kindly supporting open source projects with its full-featured Java Profiler.</p>
					<p>YourKit, LLC is the creator of innovative and intelligent tools for profiling Java and .NET applications. 
						Take a look at YourKit's leading software products: <a href="http://www.yourkit.com/java/profiler/index.jsp">YourKit Java Profiler</a> and <a href="http://www.yourkit.com/.net/profiler/index.jsp">YourKit .NET Profiler</a>.
				</div>
				<div class="span4"><img src="/Xtext/images/yourkit_java.png"></img></div>
			</div>
		</div>

    
    <footer class="site-footer">
  <div id="extra">
    <div class="inner">
      <div class="container">
        <div class="row">
          <div class="span6">
            <h3 class="footer-links-header">Quick Links</h3>
            <ul class="footer-links clearfix">
              <li><a href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a></li>
              <li><a href="http://www.eclipse.org/legal/termsofuse.php">Terms of Use</a></li>
              <li><a href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a></li>
              <li><a href="http://www.eclipse.org/legal/">Legal</a></li>
            </ul>
            <ul class="footer-links clearfix">
              <li><a href="http://www.eclipse.org">Eclipse Home</a></li>
              <li><a href="http://marketplace.eclipse.org/">Market Place</a></li>
              <li><a href="http://live.eclipse.org/">Eclipse Live</a></li>
              <li><a href="http://www.planeteclipse.org/">Eclipse Planet</a></li>
            </ul>
          </div>
          <div class="span6">
            <!-- Social Media Links -->
            <h3 class="footer-links-header"">Social Media</h3>
            <ul class="footer-links clearfix">
              <li>
                <a href="https://twitter.com/xtext"><img src="/Xtext/images/Twitter-bird-darkgray.png" class="img-responsive" style="margin-right: 5px;height: 1em;" alt="Twitter icon">@xtext on Twitter</a>
              </li>
            </ul>
          </div>
        </div>
      </div>
    </div>
  </div>
  <a href="#" class="scrollup fadeOutRight animated" style="display: none;">ScrollUp</a>
  <!-- Le javascript
      ================================================== -->
  <!-- Placed at the end of the document so the pages load faster -->
  
  <script src="/Xtext/js/jquery-1.11.3.min.js"></script>
  <script src="/Xtext/js/bootstrap.min.js"></script>
  <script src="/Xtext/js/jquery.easing.1.3.js" type="text/javascript"></script>
  <script src="/Xtext/js/jquery.prettyPhoto.js" type="text/javascript"></script>
  <script src="/Xtext/js/prettify.js" type="text/javascript"></script>
  <script src="/Xtext/js/lang-xtend.js" type="text/javascript"></script>
  <script src="/Xtext/js/lang-common.js" type="text/javascript"></script>
  <script src="/Xtext/js/custom.js" type="text/javascript"></script>
  <!--script src="https://apis.google.com/js/platform.js" async defer></script-->
  <!--script type="text/javascript">
    var _gaq = _gaq || [];  
      _gaq.push([ '_setAccount', 'UA-2429174-3' ]);
    _gaq.push([ '_trackPageview' ]);
    (function() {
      var ga = document.createElement('script');
      ga.type = 'text/javascript';
      ga.async = true;
      ga.src = ('https:' == document.location.protocol ? 'https://ssl'
          : 'http://www')
          + '.google-analytics.com/ga.js';
      var s = document.getElementsByTagName('script')[0];
      s.parentNode.insertBefore(ga, s);
    })();
  </script-->
  <script src="/Xtext/js/coverflow.min.js" type="text/javascript"></script>
  <script>
      $(function() {
        $('#coverflow').coverflow({
          active : 1,
          visibleAside: 2,
          overlap : 0.5,
          scale : 0.9,
          angle : 20,
          trigger : {
            "itemfocus" : true,
            "swipe" : true,
            "mousewheel" : false
          }
        });
        $('#coverflow :hidden').toggle();
        $(window).resize(function() {
          $('#coverflow').coverflow();
        });
      });

  </script>
</footer>


  </body>

</html>
