https://github.com/inbo/checklist
An R package for checking R packages and R code
https://github.com/inbo/checklist
checklist continuous-integration continuous-testing quality-assurance r
Last synced: 26 days ago
JSON representation
An R package for checking R packages and R code
- Host: GitHub
- URL: https://github.com/inbo/checklist
- Owner: inbo
- License: gpl-3.0
- Created: 2020-07-06T07:53:41.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-04-18T13:00:26.000Z (10 months ago)
- Last Synced: 2025-04-24T06:02:17.860Z (10 months ago)
- Topics: checklist, continuous-integration, continuous-testing, quality-assurance, r
- Language: R
- Homepage: https://inbo.github.io/checklist
- Size: 2.85 MB
- Stars: 18
- Watchers: 9
- Forks: 2
- Open Issues: 9
-
Metadata Files:
- Readme: README.Rmd
- Changelog: NEWS.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: .github/CODE_OF_CONDUCT.md
- Citation: CITATION.cff
- Zenodo: .zenodo.json
Awesome Lists containing this project
- jimsghstars - inbo/checklist - An R package for checking R packages and R code (R)
README
---
output: github_document
---
[](https://www.repostatus.org/#active)
[](https://lifecycle.r-lib.org/articles/stages.html#maturing-1)

[](https://github.com/inbo/checklist/releases)
[](https://github.com/inbo/checklist/actions)


[](https://app.codecov.io/gh/inbo/checklist?branch=main)


[](https://doi.org/10.5281/zenodo.4028303)
# The Checklist Package 
```{r setup, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE, comment = "#>", fig.path = "man/figures/README-",
out.width = "100%", eval = FALSE
)
```
The goal of `checklist` is to provide an elaborate and strict set of checks for R packages and R code.
## Installation
You can install the package from the [INBO universe](https://inbo.r-universe.dev/builds) via
```{r universe}
# Enable the INBO universe
options(
repos = c(
inbo = "https://inbo.r-universe.dev", CRAN = "https://cloud.r-project.org"
)
)
# Install the packages
install.packages("checklist", dependencies = TRUE)
```
If that doesn't work, you can install the version from [GitHub](https://github.com/inbo/checklist/) with:
```{r installation}
# install.packages("remotes")
remotes::install_github("inbo/checklist", dependencies = TRUE)
```
## Setting a default organisation
Originally, we created `checklist` with the Research Institute for Nature and Forest (INBO) in mind.
We recommend that you set a default organisation list.
More details in `vignette("organisation", package = "checklist")`.
## Using `checklist` on a package.
Before you can run the checks, you must initialise `checklist` on the package.
Either use `create_package()` to create a new package from scratch.
Or use `setup_package()` on an existing package.
More details in `vignette("getting_started", package = "checklist")`.
```{r package-initialise}
create_package()
```
Once initialised, you can run all the checks with `check_package()`.
Or run the individual checks.
```{r package-checks}
check_cran()
check_description()
check_documentation()
check_lintr()
check_filename()
check_folder()
update_citation()
```
To allow some of the warnings or notes, first run the checks and store them in an object.
Update `checklist.yml` by writing that object.
```{r package-allow-warnings}
x <- check_package()
write_checklist(x)
```
## Using `checklist` on a project.
Before you can run the checks, you must initialise `checklist` on the project.
Either use `create_project()` to create a new package from scratch.
Or use `setup_project()` on an existing package.
More details in `vignette("getting_started_project", package = "checklist")`.
```{r project-initialise}
library(checklist)
create_project()
```
Once initialised, you can run all the checks with `check_project()`.
Or run the individual checks.
```{r project-checks}
check_lintr()
check_filename()
check_folder()
update_citation()
```
To allow some of the warnings or notes, first run the checks and store them in an object.
Update `checklist.yml` by writing that object.
```{r project-allow-warnings}
x <- check_project()
write_checklist(x)
```