Skip to contents

I would love to have you contribute to supportR if that is of interest! I would divide contributions into two categories: (1) function ideas that aren’t coded and (2) functions that are already written in scripts. Once you’ve decided which of these categories you fall into, follow the instructions under the relevant subheading.

Note on “Artificial Intelligence”

Please do not use generative AI for any facet of your contribution to this work. AI is a random number generator built on plagiarism with an absurd error rate so from ethical and practical perspectives I’m not interested in including content produced in that way in this effort. I am absolutely interested in the ways in which your curiosity and insight can benefit this product though, so please do contribute if you have an idea for a new feature. Remember that function ideas are still totally welcome so even if you don’t feel up to coding your idea yourself, send the idea to me and I can happily try to develop code that fits that purpose.

Function Ideas

If you have an idea for a function open a GitHub issue and tell me about it! Be sure to include as much detail about what the function does (and the limits of its power) as possible. I’ll read through your issue and comment on it with any follow-up questions/comments I have.

Function Scripts

If you’ve already written up an R function in a script you have two options for getting it added to supportR:

Scripts Option A

  • Open a GitHub issue and paste your function into it
  • I can then do the necessary formatting to get it to fit in the larger package architecture

Scripts Option B

  • Fork the supportR repository
  • Add your function script (and any necessary data files) into the dev folder (see here)
    • The dev folder is crucial because it’s tracked by Git but not built into supportR. Putting your content there means small errors in your script (if any exist) won’t affect the larger development version of supportR
  • Commit / push those changes to your fork
  • Open a pull request with your changes
  • I’ll merge the pull request and then do the necessary formatting and development checks to get the function smoothly integrated with the package

Contribution Credit

In return for your generous contribution to supportR I’ll give you the following modes of credit:

  • Add you as a contributor/author in the DESCRIPTION of the package with a link to a professional website of your choosing
  • Put your name in the README of the repository next to the description of your function
  • Add your name to the function description

Style Guide

When you contribute code you do not need to make sure that code adheres to a particular style. That said, all functions in supportR will eventually need to be in “snake case” (i.e., all lowercase with words separated by underscores). I am happy to make those style edits though so if that level of edit does not spark joy for you, don’t sweat it!

For functions that print informative messages, there will also need to be a quiet argument that allows for easy silencing of those messages. Check out ?supportR::github_ls for an example. Just like the snake case though, I’m happy to add this argument!

Style guide TL;DR (Too Long; Didn’t Read): supportR has specific style guidelines but I’d rather you submit functions that don’t meet those guidelines than not contribute your ideas because the style bits were too cumbersome.