Name Mode Size
.github 040000
R 040000
actions 040000
dev 040000
inst 040000
man 040000
pkgdown 040000
tests 040000
vignettes 040000
.Rbuildignore 100644 0 kb
.gitignore 100644 0 kb
DESCRIPTION 100644 1 kb
NAMESPACE 100644 1 kb
NEWS.md 100644 5 kb
README.Rmd 100644 7 kb
README.md 100644 9 kb
codecov.yml 100644 0 kb
README.md
<!-- README.md is generated from README.Rmd. Please edit that file --> # biocthis <!-- badges: start --> [![Lifecycle: stable](https://img.shields.io/badge/lifecycle-stable-brightgreen.svg)](https://lifecycle.r-lib.org/articles/stages.html#stable) [![Bioc release status](http://www.bioconductor.org/shields/build/release/bioc/biocthis.svg)](https://bioconductor.org/checkResults/release/bioc-LATEST/biocthis) [![Bioc devel status](http://www.bioconductor.org/shields/build/devel/bioc/biocthis.svg)](https://bioconductor.org/checkResults/devel/bioc-LATEST/biocthis) [![Bioc downloads rank](https://bioconductor.org/shields/downloads/release/biocthis.svg)](http://bioconductor.org/packages/stats/bioc/biocthis/) [![Bioc support](https://bioconductor.org/shields/posts/biocthis.svg)](https://support.bioconductor.org/tag/biocthis) [![Bioc history](https://bioconductor.org/shields/years-in-bioc/biocthis.svg)](https://bioconductor.org/packages/release/bioc/html/biocthis.html#since) [![Bioc last commit](https://bioconductor.org/shields/lastcommit/devel/bioc/biocthis.svg)](http://bioconductor.org/checkResults/devel/bioc-LATEST/biocthis/) [![Bioc dependencies](https://bioconductor.org/shields/dependencies/release/biocthis.svg)](https://bioconductor.org/packages/release/bioc/html/biocthis.html#since) [![Codecov test coverage](https://codecov.io/gh/lcolladotor/biocthis/branch/devel/graph/badge.svg)](https://codecov.io/gh/lcolladotor/biocthis?branch=devel) [![R build status](https://github.com/lcolladotor/biocthis/actions/workflows/check-bioc.yml/badge.svg)](https://github.com/lcolladotor/biocthis/actions/workflows/check-bioc.yml) [![GitHub issues](https://img.shields.io/github/issues/lcolladotor/biocthis)](https://github.com/lcolladotor/biocthis/issues) [![GitHub pulls](https://img.shields.io/github/issues-pr/lcolladotor/biocthis)](https://github.com/lcolladotor/biocthis/pulls) <!-- badges: end --> *[biocthis](https://github.com/lcolladotor/biocthis)* is an R package that expands *[usethis](https://CRAN.R-project.org/package=usethis)* with Bioconductor-friendly templates. These templates will help you quickly create an R package that either has Bioconductor dependencies or that you are thinking of submitting to Bioconductor one day. *[biocthis](https://github.com/lcolladotor/biocthis)* has functions that can also enhance your current R packages that either are already distributed by Bioconductor or have Bioconductor dependencies. *[biocthis](https://github.com/lcolladotor/biocthis)* also includes a Bioconductor-friendly [GitHub Actions](https://github.com/features/actions) workflow for your R package(s). Note that *[biocthis](https://github.com/lcolladotor/biocthis)* is not a Bioconductor-core package and as such it is not a Bioconductor official package. It was made by and for Leonardo Collado-Torres so he could more easily maintain and create Bioconductor packages as listed at [lcolladotor.github.io/pkgs/](https://lcolladotor.github.io/pkgs/). Hopefully *[biocthis](https://github.com/lcolladotor/biocthis)* will be helpful for you too. ## Installation instructions Get the latest stable `R` release from [CRAN](http://cran.r-project.org/). Then install `biocthis` from [Bioconductor](http://bioconductor.org/) using the following code: ``` r if (!requireNamespace("BiocManager", quietly = TRUE)) { install.packages("BiocManager") } BiocManager::install("biocthis") ``` And the development version from [GitHub](https://github.com/lcolladotor/biocthis) with: ``` r BiocManager::install("lcolladotor/biocthis") ``` ## Example Here is how you can use *[biocthis](https://github.com/lcolladotor/biocthis)* to create a new Bioconductor-friendly R package (illustrated using a temporary directory): ``` r ## Load biocthis library("biocthis") ## Create an example package for illustrative purposes. ## Note: you do not need to run this for your own package! pkgdir <- biocthis_example_pkg() #> ✔ Creating '/var/folders/9f/82m1lr2n1fv1mk91plf2l_dr0000gn/T/Rtmp4fYodr/biocthisexample/' #> ✔ Setting active project to '/private/var/folders/9f/82m1lr2n1fv1mk91plf2l_dr0000gn/T/Rtmp4fYodr/biocthisexample' #> ✔ Creating 'R/' #> ✔ Writing 'DESCRIPTION' #> Package: biocthisexample #> Title: What the Package Does (One Line, Title Case) #> Version: 0.0.0.9000 #> Authors@R (parsed): #> * First Last <first.last@example.com> [aut, cre] (YOUR-ORCID-ID) #> Description: What the package does (one paragraph). #> License: `use_mit_license()`, `use_gpl3_license()` or friends to pick a #> license #> Encoding: UTF-8 #> Roxygen: list(markdown = TRUE) #> RoxygenNote: 7.2.1 #> ✔ Writing 'NAMESPACE' #> ✔ Setting active project to '<no active project>' #> ✔ Setting active project to '/private/var/folders/9f/82m1lr2n1fv1mk91plf2l_dr0000gn/T/Rtmp4fYodr/biocthisexample' ## Create the bioc templates biocthis::use_bioc_pkg_templates() #> ✔ Creating 'dev/' #> ✔ Adding '^dev$' to '.Rbuildignore' #> ✔ Writing 'dev/01_create_pkg.R' #> ✔ Writing 'dev/02_git_github_setup.R' #> ✔ Writing 'dev/03_core_files.R' #> ✔ Writing 'dev/04_update.R' ``` The template `dev` scripts include comments and steps you can follow for making your Bioconductor-friendly R package or updating a current package. In particular, you might want to use a Bioconductor-friendly GitHub Actions workflow. If this is your first time seeings this words, we highly recommend that you watch [Jim Hester’s `rstudio::conf(2020)` talk on this subject](https://www.jimhester.com/talk/2020-rsc-github-actions/). ``` r ## Create a GitHub Actions workflow that is Bioconductor-friendly biocthis::use_bioc_github_action() #> ✔ Creating '.github/' #> ✔ Adding '^\\.github$' to '.Rbuildignore' #> ✔ Adding '*.html' to '.github/.gitignore' #> ✔ Creating '.github/workflows/' #> ✔ Writing '.github/workflows/check-bioc.yml' ``` ``` r ## Alternatively, use the general GitHub Actions workflow maintained by ## r-lib/actions usethis::use_github_action("check-standard") #> ✔ Saving 'r-lib/actions/examples/check-standard.yaml@v2' to '.github/workflows/check-standard.yaml' #> • Learn more at <https://github.com/r-lib/actions/blob/v2/examples/README.md>. ``` ## Citation Below is the citation output from using `citation('biocthis')` in R. Please run this yourself to check for any updates on how to cite **biocthis**. ``` r print(citation("biocthis"), bibtex = TRUE) #> #> To cite package 'biocthis' in publications use: #> #> Collado-Torres L (2022). _Automate package and project setup for #> Bioconductor packages_. doi:10.18129/B9.bioc.biocthis #> <https://doi.org/10.18129/B9.bioc.biocthis>, #> https://github.com/lcolladotor/biocthisbiocthis - R package version #> 1.9.1, <http://www.bioconductor.org/packages/biocthis>. #> #> A BibTeX entry for LaTeX users is #> #> @Manual{, #> title = {Automate package and project setup for Bioconductor packages}, #> author = {Leonardo Collado-Torres}, #> year = {2022}, #> url = {http://www.bioconductor.org/packages/biocthis}, #> note = {https://github.com/lcolladotor/biocthisbiocthis - R package version 1.9.1}, #> doi = {10.18129/B9.bioc.biocthis}, #> } #> #> Collado-Torres L (2022). "Automate package and project setup for #> Bioconductor packages." _bioRxiv_. doi:10.1101/TODO #> <https://doi.org/10.1101/TODO>, #> <https://www.biorxiv.org/content/10.1101/TODO>. #> #> A BibTeX entry for LaTeX users is #> #> @Article{, #> title = {Automate package and project setup for Bioconductor packages}, #> author = {Leonardo Collado-Torres}, #> year = {2022}, #> journal = {bioRxiv}, #> doi = {10.1101/TODO}, #> url = {https://www.biorxiv.org/content/10.1101/TODO}, #> } ``` Please note that the `biocthis` was only made possible thanks to many other R and bioinformatics software authors, which are cited either in the vignettes and/or the paper(s) describing this package. ## Code of Conduct Please note that the `biocthis` project is released with a [Contributor Code of Conduct](http://bioconductor.org/about/code-of-conduct/). By contributing to this project, you agree to abide by its terms. ## Development tools - Continuous code testing is possible thanks to [GitHub actions](https://www.tidyverse.org/blog/2020/04/usethis-1-6-0/) through *[usethis](https://CRAN.R-project.org/package=usethis)*, *[remotes](https://CRAN.R-project.org/package=remotes)*, and *[rcmdcheck](https://CRAN.R-project.org/package=rcmdcheck)* customized to use [Bioconductor’s docker containers](https://www.bioconductor.org/help/docker/) and *[BiocCheck](https://bioconductor.org/packages/3.15/BiocCheck)*. - Code coverage assessment is possible thanks to [codecov](https://codecov.io/gh) and *[covr](https://CRAN.R-project.org/package=covr)*. - The [documentation website](http://lcolladotor.github.io/biocthis) is automatically updated thanks to *[pkgdown](https://CRAN.R-project.org/package=pkgdown)*. - The code is styled automatically thanks to *[styler](https://CRAN.R-project.org/package=styler)*. - The documentation is formatted thanks to *[devtools](https://CRAN.R-project.org/package=devtools)* and *[roxygen2](https://CRAN.R-project.org/package=roxygen2)*. For more details, check the `dev` directory. This package was developed using *[biocthis](https://bioconductor.org/packages/3.15/biocthis)*.