Child pages
  • Contributing to JetBrains MPS Project

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


  • core - as the name indicates, it holds the essential language-design functionality
    • aspects - holds the functionality and languages of the individual language definition aspects
    • baselanguage - holds the implementation of BaseLanguage and its extensions, such as closures, collections and other
    • languages - contains core languages, such as smodel, quotation, xml and others
    • stubs - stores loaded external libraries, such as JDK, Ant, the IntelliJ platform and the MPS Java sources
  • platform - contains the IDE extension functionality, such as the console, vas support, model checking, build language, and other
  • samples - groups the sample projects
  • tests - contains tests for various aspects of MPS
  • workbench - provides integration with the IntelliJ platform and implementation of many UI elements, supports execution and debugging

Committing your work

The MPS project stores generated artefacts in Git alongside the sources and models. Before committing please ensure that all the changed models have been regenerated - the (generation required) note must disappear. May you fail to do so, the TeamCity CI server will reject the commit by a failed build, since it checks all artefacts for being correctly generated. The best way to regenerate is to invoke Rebuild from the model's or module's context menu.