Skip to content

Contributing Guidelines

Ajay Sreedhar edited this page Jul 5, 2022 · 4 revisions

There are several ways by which you can contribute to Primate, as a developer or even as regular user. The goal of this document is to provide a high level overview of how you can participate.

Providing Feedbacks

If you have found any bugs, issues or have any suggestions for improvement, you can use the issue tracker to file them.

Please follow these guidelines while opening an issue.

  • Check the list of open issues to see if the issue has already been reported. If the issue is already present in the list:
    • Make relevant comments.
    • Express your reactions with emojis.
  • If the issue is not reported yet, open a new issue:
    • Provide a descriptive title for the issue.
    • Include the version number of Primate you are using and also the name of your operating system.
    • If the issue is a bug, try to include steps to reproduce the same, numbered as 1, 2, 3...
    • Mention what is the current behavior and the expected behavior.
    • Try to include screenshots or videos demonstrating the issue.
    • If possible, try to provide screenshots of the Activity Log blurring any sensitive information.

Creating Pull Requests

To start developing, you will need to install the following:

  • Node.js version 16.0.0 LTS or higher.
  • Yarn version 1.22.0 or higher.

If you don't have Yarn already installed, please refer this link.

Once you have all the requirements set up, fork the repository.

Clone the forked repository to your computer.

$ git clone [email protected]:<your_username>/primate.git

Install the required Node modules.

$ cd primate
$ yarn install

Run the application.

$ yarn start

You can now start making changes to the code.

Submitting Your Changes

Create a pull request to the main branch to get your changes reviewed and merged.

Please keep the following suggestions in mind while creating pull requests.

  • Run $ yarn run lint to see if the formatting and coding conventions are maintained.
  • Provide a useful title with a suitable prefix from the list below:
    • feat for new features.
    • enhance for enhancements or improvements.
    • bugfix for bugfixes.
  • If multiple labels are valid for a pull request, choose them considering the precedence as they are mentioned above.
    • For example, you have improved a module and this improvement automatically fixes a bug, pick the label as enhance and mention the bugfix in the description.
  • Provide detailed information regarding the changes in the description box.
  • In case of newly added features and bugfixes, it is good to include relevant screenshots.
  • Avoid mixing changes to multiple modules and libraries in the same pull request, unless there is a strong dependency between them.
Clone this wiki locally