euroargodev / euroargodev/software_guidelines

The project includes a document describing how to contribute

Open
#38 0 comments 0 reactions 0 assignees View on GitHub
auto-checked-guideline guideline
Dominant language
Python
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

In order to help the community to contribute to the project, in a collaborative approach, a document should describe how to do so. In particular:
- how to report bug/issues to the development and maintenance team,
- how to suggest changes or new features,
- what are the coding guidelines of the project to follow,
- how to contribute to the documentation,
- how to review PRs,
- etc...

This can be done in the project documentation ([eg](https://argopy.readthedocs.io/en/latest/contributing.html)) or a simple CONTRIBUTING.md file at the root level of the repository.

‼️ Note that even if the contributions guidelines are described in the documentation (eg: in [the documentation of the project](https://argopy.readthedocs.io/en/latest/contributing.html)), a CONTRIBUTING.md file must be associated on the repository to point toward that full description ([see Argopy eg](https://github.com/euroargodev/argopy/blob/master/CONTRIBUTING.md) (this is useful for code-quality checkers).

## Examples

### "How to contribute" section in the documentation

Check here: https://argopy.readthedocs.io/en/latest/contributing.html

### CONTRIBUTING.md file

```markdown
# Contributing to [Project Name]

Thank you for your interest in contributing to **[Project Name]**! We welcome contributions from everyone, whether you're fixing bugs, improving documentation, or adding new features.

## How to Contribute

### 1. **Reporting Issues**
- Use the [Issue Tracker](link-to-issues) to report bugs or request features.
- **Before submitting an issue:**
- Check existing issues to avoid duplicates.
- Include a clear title, detailed description, and steps to reproduce the issue.
- Add relevant labels (e.g., `bug`, `enhancement`, `documentation`).

### 2. **Suggesting Changes**
- Fork the repository and create a new branch for your changes.
- Submit a **Pull Request (PR)** with:
- A descriptive title and summary of changes.
- Reference to any related issues (e.g., `Fixes #123`).
- Clear commit messages (e.g., `feat: add NetCDF validation`).

### 3. **Code Guidelines**
- Follow the project’s coding style (e.g., PEP 8 for Python).
- Include **comments** for complex logic.
- Add **unit tests** for new features or bug fixes.
- Ensure all tests pass before submitting a PR.

### 4. **Documentation**
- Update documentation (e.g., `README.md`, docstrings) for any changes.
- Add examples or tutorials if introducing new functionality.

### 5. **Review Process**
- All PRs require **at least one approval** from a maintainer.
- Be responsive to feedback and iterate on your changes.

### 6. **Community**
- Join our [discussion forum](link) or [Slack/mailing list](link) for questions.
- Attend our [monthly meetings](link) (if applicable).

## License
By contributing, you agree your contributions will be licensed under **[Project License]** (e.g., EUPL v1.2).

## Recognition
All contributors will be acknowledged in the project’s release notes.

---
**Need help?** Contact us at [email] or open an issue.
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.