Contributing to the JetBrains MPS Project

File a Bug Report

Bug reports are the simplest way you can get involved. Bug reports take little time to file and are very helpful to developers. When you discover a problem, please report it. Make sure you provide information about your environment (OS, JDK and MPS version), steps to reproduce the issue, as well as a textual description of the problem. You can file a bug in JetBrains MPS YouTrack bug database. Before submitting an issue, you may also want to search for already submitted ones describing the same problem - and if you find one, feel free to vote for it.

Create Unit Test Reproducing the Problem

Bug reports are helpful, but as you probably know, most of the problems can be reproduced/checked by automated JUnit tests. It's much more easy and convenient for our developers to reproduce the problem by running a test case instead of manually going through a list of steps to reproduce the bug. If you invest a little bit more time and create a JUnit test reproducing your problem, we will usually be able to fix/process your bug faster.

Contribute Code Indirectly

If you would like to improve the MPS code, you can submit a patch by attaching it to corresponding request in the JetBrains MPS YouTrack bug database. You can either file a new issue with the patch attached, or attach a patch to an issue submitted by another user. A developer will review your patch and, if it meets the quality criteria and fits with the rest of the code, you'll be notified about the acceptance of the patch. As it was already mentioned, patches having a unit-test attaches should be processed faster.

Contribute Code Directly

Although the main Git repository is located at JetBrains, we keep a public mirror at GitHub. The mirror is primarily meant to be an easy-to-use repository for external contributors, who can contribute code effortlessly through pull requests.

Please check out the Contributing to JetBrains MPS Project page for full details on how to build the project from sources and how to submit your code contributions.

Sharing and Co-Hosting Your Oss Project

If you are building an open-source project with MPS, please consider the option to host Continuous Integration for your project at TeamCity, right next to the MPS project itself, with no charge. This way you’ll be able to effortlessly build your project against the newest (or any other) version of MPS. If this is something that your project could benefit from, please let us know.

Contribute Documentation

The better the concepts are explained the more enthusiasts will join us in the MPS community. If you’re interested in collaborating, let us know. We can grant you write permission to the MPS Confluence space, discuss your ideas and point you to the the biggest sore-spots.

Contribute Tutorials, Presentations or Videos

If you have created a tutorial or a video on MPS, please let us know and we will share it on the project website for other MPS enthusiasts to benefit.