Skip to content

Latest commit

 

History

History
65 lines (35 loc) · 3.96 KB

CONTRIBUTING.md

File metadata and controls

65 lines (35 loc) · 3.96 KB

Hello!

If you're reading this, you'd like to contribute to an arkOS project! Contributions are welcome and encouraged on this and any other project you find here.

General Resources

  • GitHub is the primary destination for this project's source code repository, issue tracker and contribution management (pull requests).
  • Testing and deployment infrastructure (Jenkins) is kept on an external server.
  • Documentation for development is kept in README.md, and changelogs are generally kept on the Releases tab.

Submitting Pull Requests

Pull requests are a great way to add a new feature for yourself to use, and to help others who might be using this project along the way. Please follow the style guide below for your code submissions, and don't forget to adequately test your code before you make the request. We will get to it as soon as we can, and review it with you if need be.

Pulls should be made against:

  • patch if fixing a bug
  • develop if contributing a new feature

If you're unsure where you should submit your pull, just check with us and we will point you in the right direction!

Filing Bugs

If you come across a bug in this project, your reports are welcome! Take a look at the issue tracker first to make sure the bug hasn't already been reported. If you end up filing a duplicate, don't worry - better to have an over-reported bug then one that goes unnoticed!

The best bug reports are short but clear. There's a certain amount of critical information needed in order to successfully solve the problem. Please try to make sure your bug report touches on the following:

  • Context: information on the issue encountered
  • Process: an ordered list of the steps we can take to reproduce the issue
  • Expected result: the result you expect to happen when you follow the above steps
  • Actual result: the thing that happens (that is not supposed to happen) when you follow the above steps
  • Any suggested fixes, stack traces or supporting documentation that would be helpful. If you are running a GUI-based application, screenshots are also good to include.

Requesting Improvements

If you have suggestions regarding how this project can be improved, but are not able to submit a pull request to achieve it yourself, feel free to file an issue with "[Suggestion]" somewhere in the title. It doesn't have to follow the bullet points for bugs given above, but should include detailed information about your use case, and most importantly why this suggestion would be good for anyone else who would like to use this project.

Style Guide

A few things to remember when contributing code:

  • Commit messages should accurately enough describe the problem.
  • Be sure to adequately comment lengthy contributions.
  • Python code should use four spaces for each indent, instead of a tab.
  • Python code should follow PEP8 whenever feasible. We recommend using flake8.
  • Python code should support Python 3 by default. (If this is a Python 2.x-only repo or branch, disregard)
  • JavaScript code should be formatted in ES6 wherever possible. If there is an .eslintrc or .jshintrc in this repository, please follow the requirements that appear in your code editor for proper formatting.

Conduct

We try to use all of our projects as an example of what positive and respectful effort can achieve in open source. We invite you to do the same as you contemplate contributing to this project. Feel free to offer constructive criticism when you feel its necessary, but refrain from being unnecessarily harsh, making any sort of personal attack or using inappropriate language. We have zero tolerance for harassment of any kind.

Asking for Help

If you'd like to ask questions about contributing to this project or about the code contained within, feel free! Our profile page on GitHub has links to our contact information, we will respond whenever possible.

Thank you!