Resources
This section has links to additional resources on package development, many of which were used in developing these materials.
Official guides
CRAN
- Writing R extensions https://cran.r-project.org/doc/manuals/R-exts.html
Bioconductor
- Bioconductor Package Guidelines https://www.bioconductor.org/developers/package-guidelines/
- Building Packages for Bioconductor https://www.bioconductor.org/developers/how-to/buildingPackagesForBioc/
- Bioconductor Package Submission https://bioconductor.org/developers/package-submission/
rOpenSci
- rOpenSci Packages: Development, Maintenance, and Peer Review https://devguide.ropensci.org/
RStudio
- Developing Packages with RStudio https://support.rstudio.com/hc/en-us/articles/200486488-Developing-Packages-with-RStudio
- Building, Testing and Distributing Packages https://support.rstudio.com/hc/en-us/articles/200486508-Building-Testing-and-Distributing-Packages
- Writing Package Documentation https://support.rstudio.com/hc/en-us/articles/200532317-Writing-Package-Documentation
Books
- R Packages (Hadley Wickham) http://r-pkgs.had.co.nz/
- Advanced R (Hadley Wickam) https://adv-r.hadley.nz/
- Advanced R Course (Florian Privé) https://privefl.github.io/advr38book/
Tutorials
- Writing an R package from scratch (Hilary Parker) https://hilaryparker.com/2014/04/29/writing-an-r-package-from-scratch/
- Writing an R package from scratch (Updated) (Thomas Westlake) https://r-mageddon.netlify.com/post/writing-an-r-package-from-scratch/
- usethis workflow for package development (Emil Hvitfeldt) https://www.hvitfeldt.me/blog/usethis-workflow-for-package-development/
- R package primer (Karl Broman) https://kbroman.org/pkg_primer/
- R Package Development Pictorial (Matthew J Denny) http://www.mjdenny.com/R_Package_Pictorial.html
- Building R Packages with Devtools (Jiddu Alexander) http://www.jiddualexander.com/blog/r-package-building/
- Developing R packages (Jeff Leek) https://github.com/jtleek/rpackages
- R Package Tutorial (Colautti Lab) https://colauttilab.github.io/RCrashCourse/Package_tutorial.html
- Instructions for creating your own R package (MIT) http://web.mit.edu/insong/www/pdf/rpackage_instructions.pdf
- How to Create and Distribute an R Package (Shian Su) https://medium.com/@shiansu/how-to-create-and-distribute-an-r-package-a296217435dc
Workshops and courses
- R Forwards Package Workshop (Chicago, February 23, 2019) https://github.com/forwards/workshops/tree/master/Chicago2019
- Write your own R package (UBC STAT 545) http://stat545.com/packages00_index.html
Blogs
- How to develop good R packages (for open science) (Malle Salmon) https://masalmon.eu/2017/12/11/goodrpackages/
Style
- Tidyverse https://style.tidyverse.org/
- Google https://google.github.io/styleguide/Rguide.html
- Jean Fan https://jef.works/R-style-guide/
- A Computational Analysis of the Dynamics of R Style Based on 94 Million Lines of Code from All CRAN Packages in the Past 20 Years. (Yen, C.Y., Chang, M.H.W., Chan, C.H.) https://github.com/chainsawriot/rstyle