Contributor Code of Conduct

Introduction

All contributors to this project are expected to follow the code of conduct detailed in this document at all times when engaging with or discussing the HOOMD-TF project. This includes public/private mailing lists, issue tracker threads, blogs, personal websites, social media, and any other forms of communication, in-person or otherwise.

This code of conduct is expected to be followed by any and all participants, whether or not they are affiliated with the White Laboratory, whether or not they claim affiliation with HOOMD-TF, including when representing HOOMD-TF in any capacity.

This code of conduct is not exhaustive and may be subject to changes and improvements in the future. It is meant to foster an environment of collaboration and respect. In order to maintain a respectful community, please follow the intent of this page as much as the literal writing.

Specific Guidelines

We, the contributors and participants, aim to:

1. Be welcoming. Any and all who are willing and able to contribute to this project should feel welcome to participate. To this end, we encourage the use of public communication such as GitHub issue tracking as much as possible, to ensure those who join later can benefit from any useful discussion.

2. Be nice. We strive to avoid assigning ill intent and assume the best of others first. We should be patient with newcomers and avoid talking down to anyone. We should never allow personal negative feelings to turn into an attack on someone else’s character or work. A negative environment is counter-productive and just not pleasant. In particular, violence, threats of violence, unwelcome personal advances, insults, and sexist or racist comments or jokes are entirely unwelcome, as is encouragement of any of these.

  1. Be humble. Criticisms of code are not personal and should be taken on good faith. Any improvement is good.

4. Be patient. Everyone has different levels of experience, and a willingness to learn should be met with a willingness to teach. Not everyone is obligated to answer every question in-depth, but no one should be ignored or barred from helping because of a lack of experience.

5. Be transparent. Since this is a community project, new users and developers should be able to understand how and why it works the way it does. Contributors should be willing to answer questions about their work, and should follow the documentation style to ensure a smooth learning curve.

6. Be inclusive. Discrimination based on age, disability, ethnicity, familial status, gender identity, nationality, religion, sex, sexual orientation, or any legally-protected group will not be tolerated.

Reporting Issues

Issues can be reported via GitHub. When opening an issue, please be as specific as possible, and provide a way to replicate your issue so it can be addressed readily.

Contributing

Contributions are welcome and can be submitted by opening a pull request on our GitHub. As with reporting an issue, pull requests for contributions should be as specific as possible for smooth integration into the codebase. Please ensure that all tests pass before opening a pull request. If your PR includes new functionality, please also include unit testing for it, following the testing and documentation framework (see here). A contribution PR should include:

  1. What the contribution is meant to address.
  2. How to run any new unit tests (if applicable).