Table of Contents

Contribution rules

Introduction

This page gathers all the rules and habits that have been taken by the contributors on the Sigmah code. It is useful to read it as an introduction when joining the project, to be acknowledgeed of how to fit your contribution in the same trend, in order to keep the development and the final perception of the user homogeneous.

Later on, if you perceive explicitly a new habit or wants to describe an implicit rule, you're welcome to update this page !

User experience guidelines

Good source-code collaboration rules with git

We are several organizations and individuals working at the same time on the Sigmah codebase. To make this collaboration smooth for everyone requires the respect of several good housekeeping rules on our Git source code management.

Make your work easy to merge

If you want your contribution to be welcomed, make sure you publish your work in a friendly manner.

Write good commit messages, explain what you did :

Show the world! Github is social.

To prevent merge conflicts, the more you anticipate merging, the more your contribution is likely to be accepted.

Git(hub) good practices

Schema upgrade

If you need to change the database schema to make your piece of code works, it's OK, but we want to keep a read-only history of all those modifications.

Your pull-request must come with a migration file, like src/main/resources/db/migration/V1234__adding_a_table_to_store_my_super_anything.sql. This file name contains the schema version, please just number it after the others files, and after the __, a brief description of your changes.

You can get more info in the official Flyway documentation.

Rules for coordination with translators

Code style

Well, we won't discuss about how to produce good code, there are thousands of great literature about the topic.

Here are few coding guidelines that you should consider: