Contribution Guide

This guide aims to make it easier for you to start contributing to the modelix project.

Tools

The following tools are used to develop modelix. You may want to install these on your machine before getting started.

Essentials

Deployment

Platforms

Repositories

The modelix repositories are located on GitHub. In order to contribute you need to configure two-factor authentication and commit verification.

Issue Tracking

We use a YouTrack instance hosted on issues.modelix.org to keep track of modelix issues. If you want to create a new issue, you can do so in the corresponding GitHub repository, and it will be automatically imported into YouTrack.

Semantic Versioning and Conventional Commits

We use Semantic Versioning in modelix.core (a further rollout to the other modelix repositories is planned for the future). Therefore, commit messages follow Conventional Commits. To install the hooks enforcing the convention, you need to run npm install and pre-commit install in your local repository.

Naming Conventions

Branch Names

Branch names should always be prefixed. The prefix is determined by the type of changes that your branch provides like fix/, feature/, docs/. Alternatively you can use issue/ followed by the issue id as your branch name, e.g. issue/MODELIX-123.

Pull Requests

If a corresponding issue exists for your pull request, then the issue id must be part of the title.

You can use the "Copy ID and summary to clipboard" button in YouTrack, and use the clipboard content as the title for the pull request.