This guide is a work in progress, inspired by http://devguide.python.org/. It is deployed at https://contributor.r-project.org/rdevguide/.
A list of existing resources on R core development that we can use for reference or that we should document in the guide is given in the Wiki for this repo.
Corrections, suggestions and general improvements are welcome as issue submissions.
You can also suggest changes by editing the .qmd
files that are in the chapters/
folder at the root of this repository and submitting a pull request. Please target your pull requests to the main
branch.
You can push directly to main
for small fixes. Please use PRs to main
for discussing larger updates - try to limit to one section or at least one chapter in each PR, so that changes are easier to review.
- Images must be included in the source, not provided as URLs, for the PDF book to compile.
- Images should have alt text for accessibility - note this is shown as a caption in the EPUB version.
Deployment is done via GitHub Actions, as specified in the publish.yml workflow:
- whenever there's a push to main, the book is built and its content is put on the
gh-pages
branch, triggering the github-pages bot to deploy to https://contributor.r-project.org/rdevguide/ .
If you want to render the guide locally, you need to download and install the Quarto CLI (command line interface) as documented on the Quarto website. Then, from the command line (not the R console), run:
quarto preview
to preview changes in real time, or:
quarto render
to generate the book in the _book/
folder. This will also generate the PDF and ePub versions of the book, so takes a little longer. You can open the HTML version of the guide from the command line via open _book/index.html
.
If you are using RStudio, VS Code or Positron, you can use the Preview button (VS Code/Positron) or Render button (RStudio) instead.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
This book started using Sean Kross' minimal bookdown example as described on their blog.
This README borowed ideas from ropensci/dev_guide.
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!