This document is meant to focus primarily on our internal processes for contributing. If you're not a member of this team, we hope you find this document valuable as-is but you should also feel free to make any modifications you feel are necessary if you choose to use our guidelines as a starting place.
As much as possible, use the style of "Conventional Commits" in your commit messages. See here for a nice summary of the highlights of that approach.
For minor changes, (1) communicate with the team to avoid merge conflicts and (2) make commits directly to main
For major changes, (1) communicate with the team to avoid merge conflicts, (2) open a branch with an intuitive but concise name, and (3) open a pull request when you are confident your edits are largely complete. (4) Request a review from a teammate, (5) make any edits they suggest, (6) merge the PR, and (7) delete the branch.
For folder/file names and in code, please follow the following style tips:
- Use all lowercase
- Related files/objects should have a shared file prefix (e.g.,
wrangle_...
)- For files that have an inherent order, use zero-padded numbers as the prefix (e.g.,
01_
,02_
, etc.)
- For files that have an inherent order, use zero-padded numbers as the prefix (e.g.,
- Use underscores (
_
) for separating major pieces of information and hyphens (-
) in lieu of spaces (e.g.,01_find-area.R
,harmonize_spp-rich-info.py
, etc.)
When we write code--for ourselves or for working groups--we use operating system (OS) agnostic file paths.
In R, this means using the file.path()
function (from base R) to stitch together elements (e.g., file.path("data", "raw_2024.csv")
). In Python it means using the join
function from the path
module of the os
library (e.g., os.path.join("data", "raw_2024.csv")
).
If you plan on re-using a file path, assign it to an object/variable (R/Python) to avoid typos/errors when re-using the file path.