CONTRIBUTING.md

Contributing Guidelines

Pull requests, bug reports, and all other forms of contribution are welcomed and highly encouraged!

Contents

This guide serves to set clear expectations for everyone involved with the project so that we can improve it together while also creating a welcoming space for everyone to participate. Following these guidelines will help ensure a positive experience for contributors and maintainers.

:book: Code of Conduct

Please review our Code of Conduct. It is in effect at all times. We expect it to be honored by everyone who contributes to this project.

:paperclip: Asking Questions

GitHub issues are not the appropriate place to debug your specific project, but should be reserved for filing bugs and feature requests.

:fishing_pole_and_fish: Opening an Issue

Before creating an issue, check if you are using the latest version of the project. If you are not up-to-date, see if updating fixes your issue first.

:blowfish: Bug Reports and Other Issues

A great way to contribute to the project is to send a detailed issue when you encounter a problem. We ask you to please create a reprex. We always appreciate a well-written, thorough bug report. This helps us quickly identify and fix the problem.

When opening an issue, please follow these guidelines:

:tropical_fish: Feature Requests

Feature requests are more than welcome! While we will consider all requests, we cannot guarantee your request will be accepted or the timeline for implementation and release.

:fish_cake: Submitting Pull Requests

We appreciate pull requests! Before forking the repo and creating a pull request for non-trivial changes, it is usually best to first open an issue to discuss the changes, or discuss your intended approach for solving the problem in the comments for an existing issue.

Note: All contributions will be licensed under the project's license.

Guidelines for happy pull requests:

:memo: Writing Commit Messages

Please write a great commit message.

  1. Separate subject from body with a blank line
  2. Limit the subject line to 50 characters
  3. Capitalize the subject line
  4. Do not end the subject line with a period
  5. Use the imperative mood in the subject line (example: "Fix food web issue")
  6. Wrap the body at about 72 characters
  7. Use the body to explain why, not what and how (the code shows that!)
  8. If applicable, prefix the title with the relevant component name. (examples: "[Docs] Fix typo", "[Profile] Fix missing avatar")
  9. Link the commit message to the issue it fixes, if applicable. (example: "Fixes #1234")

:shark: Coding Style

Consistency is the most important. Following the existing style, formatting, and naming conventions of the file you are modifying and of the overall project. Failure to do so will result in a prolonged review process that has to focus on updating the superficial aspects of your code, rather than improving its functionality and performance.

For example, if all private properties are prefixed with an underscore _, then new ones you add should be prefixed in the same way. Or, if methods are named using camelcase, like thisIsMyNewMethod, then do not diverge from that by writing this_is_my_new_method. You get the idea. If in doubt, please ask or search the codebase for something similar.

:crab: Certificate of Origin

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

  1. The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or
  2. The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or
  3. The contribution was provided directly to me by some other person who certified (1), (2) or (3) and I have not modified it.
  4. I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved.

:fish: Thank You!

If you are reading this, thank you! We appreciate your interest in contributing to this project.

To confirm that you have read this guide and are following it as best as possible, include this emoji at the top of your issue or pull request: :fish: :fish:

:pray: Credits

This document was inspired by @jessesquires.



NOAA-EDAB/assessmentdata documentation built on June 11, 2025, 12:31 a.m.