Skip to content

Commit

Permalink
Adding a first draft of CONTRIBUTING.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Kalle Westerling committed Aug 23, 2023
1 parent e169808 commit 0d1b191
Showing 1 changed file with 96 additions and 0 deletions.
96 changes: 96 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
# DeepSensor: Contributing Guidelines

🎉🎈🍰 Welcome to DeepSensor repository! 🍰🎈🎉

💫🐥 ☀️We're excited that you're here and want to contribute.☀️ 🐥💫

Thank you for considering a contribution to the DeepSensor project! DeepSensor is a Python package dedicated to modeling environmental data with neural processes. With DeepSensor, we aim to provide a user-friendly, effective, and robust solution for the environmental research community. Our vision is <VISION>. By joining our efforts, you're helping push the boundaries of environmental science and machine learning, making strides towards a clearer understanding of our world.

We want to ensure that every user and contributor feels welcome, included and supported to participate in DeepSensor community. Whether you're a seasoned developer, a machine learning enthusiast, an environmental scientist, or just someone eager to learn and contribute, **you are welcome here**. We value every contribution, be it big or small, and we appreciate the unique perspectives you bring to the project.

We hope that the information provided in this document will make it as easy as possible for you to get involved. If you find that you have questions that are not discussed below, please let us know through one of the many ways to [get in touch](#get-in-touch).

## Inclusivity

We aim to make DeepSensor a collaboratively developed project. We, therefore, require that all our members and their contributions **adhere to our Code of Conduct**. Please familiarize yourself with our Code of Conduct that lists the expected behaviours.

Every contributor is expected to adhere to our Code of Conduct. It outlines our expectations and ensures a safe, respectful environment for everyone.

## Important Resources

If you'd like to find out more about DeepSensor, make sure to check out:

1. **README**: For a project overview, setup, and usage, please refer to our README.
2. **Project Roadmap**: Familiarize yourself with our direction and goals by checking out the project's roadmap.

## Get in touch

The easiest way to get involved with the active development of DeepSensor is to join our regular community calls. <more info about community calls here>

**Slack Workspace**: Join our DeepSensor Slack channel for discussions, queries, and community interactions.

**Email**: If you prefer a more formal communication method or have specific concerns, please reach us at <ADD EMAIL ADDRESS>.

If you want to follow along with project developments, you can do so in a number of different ways:

- <DeepSensor on Twitter -- do we want that?>
- Subscribe to our newsletter <should we have that?>

## How to Submit Changes

<develop this section a bit more to make it more user-friendly -- drawing on https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md#making-a-change-with-a-pull-request>

1. **Fork the Repository**: Start by forking the DeepSensor repository.
2. **Create a New Branch**: Name it appropriately based on the feature or fix.
3. **Make Changes**: Ensure your code adheres to the style guidelines and passes all tests.
4. **Commit and Push**: Use clear commit messages.
5. **Open a Pull Request**: Ensure you describe the changes made and any additional details.

## First-timers' Corner

If you're new to the project, we recommend starting with issues labeled as ["good first issue"](https://github.com/tom-andersson/deepsensor/issues?q=is:issue+is:open+label:%22good+first+issue%22). These are typically simpler tasks that offer a great starting point. Browse these here.

There's also the label ["thoughts welcome"](https://github.com/tom-andersson/deepsensor/issues?q=is:issue+is:open+label:%22thoughts+welcome%22), which allows for you to contribute with discussion points in the issues, even if you don't want to or cannot contribute to the codebase.

If you feel ready for it, you can also open a new issue. Before you open a new issue, please check if any of [our open issues](https://github.com/tom-andersson/deepsensor/issues) cover your idea already. If you open a new issue, please follow our basic guidelines laid out in our issue templates <link>.

## Reporting Bugs

Found a bug? Please open an issue here on GitHub to report it. We have a template for opening issues, so make sure you follow the correct format and ensure you include:

- A clear title.
- A detailed description of the bug.
- Steps to reproduce it.
- Expected versus actual behavior.

## Recognising Contributions

We value and recognize every contribution. All contributors will be acknowledged in our CONTRIBUTORS.md file. Notable contributions will also be highlighted in our regular community updates.

<we could also consider adding all-contributors, and add the following section from TTW>

DeepSensor follows the [all-contributors](https://github.com/kentcdodds/all-contributors#emoji-key) specifications. The all-contributors bot usage is described [here](https://allcontributors.org/docs/en/bot/usage). You can see a list of current contributors here.

To add yourself or someone else as a contributor, comment on the relevant Issue or Pull Request with the following:

> @all-contributors please add <username> for <contributions>
You can see the [Emoji Key (Contribution Types Reference)](https://allcontributors.org/docs/en/emoji-key) for a list of valid <contribution> types and examples of how this command can be run in [this issue](https://github.com/alan-turing-institute/the-turing-way/issues/274). The bot will then create a Pull Request to add the contributor and reply with the pull request details.

**PLEASE NOTE: Only one contributor can be added with the bot at a time!** Add each contributor in turn, merge the pull request and delete the branch (`all-contributors/add-<username>`) before adding another one. Otherwise, you can end up with dreaded [merge conflicts](https://help.github.com/articles/about-merge-conflicts). Therefore, please check the open pull requests first to make sure there aren't any [open requests from the bot](https://github.com/tom-andersson/deepsensor/pulls/app%2Fallcontributors) before adding another.

What happens if you accidentally run the bot before the previous run was merged and you got those pesky merge conflicts? (Don't feel bad, we have all done it! 🙈) Simply close the pull request and delete the branch (`all-contributors/add-<username>`). If you are unable to do this for any reason, please let us know on Slack <link to Slack> or by opening an issue, and one of our core team members will be very happy to help!

## Need Help?

If you're stuck or need assistance:

- Check our FAQ section first.
- Reach out on Slack or via email for personalized assistance. (See "Communication Channels" above for links.)
- Consider pairing up with a another contributor for guidance. You can always find us in the Slack channel and we're happy to chat!

**Once again, thank you for considering contributing to DeepSensor. Together, we're shaping the future of environmental machine learning.**

----

These Contributing Guidelines have been adapted from the [Contributing Guidelines](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md#recognising-contributions) of [The Turing Way](https://github.com/the-turing-way/the-turing-way)! (License: CC-BY)

0 comments on commit 0d1b191

Please sign in to comment.