| Title: | Opinionated R Package Quickstart |
|---|---|
| Description: | Bootstrap new R packages with strongly opinionated defaults. Creates the package scaffold, wires up tests, README and NEWS, configures GitHub Actions and Dependabot, adds Air/Jarl setup, and drop in a default AGENTS.md for building R packages. |
| Authors: | Visruth Srimath Kandali [aut, cre, cph] (ORCID: <https://orcid.org/0009-0005-9097-0688>) |
| Maintainer: | Visruth Srimath Kandali <[email protected]> |
| License: | GPL (>= 3) |
| Version: | 1.1.0 |
| Built: | 2026-07-01 09:08:45 UTC |
| Source: | https://github.com/VisruthSK/bootstrapper |
Create a package with some opinionated setup.
bootstrapper( fields = getOption("usethis.description"), setup_gha = TRUE, setup_air = TRUE, setup_jarl = TRUE, setup_dependabot = TRUE, setup_AGENTS = FALSE, setup_precommit = TRUE, setup_touchstone = FALSE, setup_touchstone_plots = FALSE )bootstrapper( fields = getOption("usethis.description"), setup_gha = TRUE, setup_air = TRUE, setup_jarl = TRUE, setup_dependabot = TRUE, setup_AGENTS = FALSE, setup_precommit = TRUE, setup_touchstone = FALSE, setup_touchstone_plots = FALSE )
fields |
Named list of |
setup_gha |
Whether to configure GitHub Actions setup. |
setup_air |
Whether to configure Air formatting. |
setup_jarl |
Whether to configure Jarl linting. |
setup_dependabot |
Whether to write a Dependabot configuration. |
setup_AGENTS |
Whether to write a default AGENTS file. |
setup_precommit |
Whether to write a Bash pre-commit hook. |
setup_touchstone |
Whether to setup Touchstone benchmarking. |
setup_touchstone_plots |
Whether to use the Touchstone comment workflow
that publishes benchmark plots to a separate branch. Only used when
|
Invisibly returns NULL.
Create a package in root, prompts for a license, cleans
up build ignore file. Essentially a slightly opinionated
wrapper around usethis::create_package().
create_package(fields = getOption("usethis.description"))create_package(fields = getOption("usethis.description"))
fields |
Named list of |
Invisibly returns NULL.
Run the package setup steps used by bootstrapper, including test
infrastructure, README/NEWS creation, GitHub Actions, and linting defaults.
Run this in the root directory of your package.
pkg_setup( setup_gha = TRUE, setup_dependabot = TRUE, setup_AGENTS = FALSE, setup_precommit = TRUE, setup_touchstone = FALSE, setup_touchstone_plots = FALSE, setup_air = TRUE, setup_jarl = TRUE )pkg_setup( setup_gha = TRUE, setup_dependabot = TRUE, setup_AGENTS = FALSE, setup_precommit = TRUE, setup_touchstone = FALSE, setup_touchstone_plots = FALSE, setup_air = TRUE, setup_jarl = TRUE )
setup_gha |
Whether to configure GitHub Actions setup. |
setup_dependabot |
Whether to write a Dependabot configuration. |
setup_AGENTS |
Whether to write a default AGENTS file. |
setup_precommit |
Whether to write a Bash pre-commit hook. |
setup_touchstone |
Whether to setup Touchstone benchmarking. |
setup_touchstone_plots |
Whether to use the Touchstone comment workflow
that publishes benchmark plots to a separate branch. Only used when
|
setup_air |
Whether to configure Air formatting. |
setup_jarl |
Whether to configure Jarl linting. |
Invisibly returns NULL.
Copies an opinionated, concise AGENTS.md for R package development.
setup_agents()setup_agents()
Invisibly returns NULL.
Writes a default Dependabot configuration for GitHub Actions.
setup_dependabot()setup_dependabot()
Invisibly returns NULL.
Sets up Air and/or Jarl formatting defaults. Optionally format the repository once.
setup_formatter(air = TRUE, jarl = TRUE, format = TRUE, gha = TRUE)setup_formatter(air = TRUE, jarl = TRUE, format = TRUE, gha = TRUE)
air |
Whether to configure Air formatting. |
jarl |
Whether to configure Jarl linting. |
format |
Whether to format the repository after configuring tools. |
gha |
Whether to create the appropriate GHA for automatic formatting on PRs. |
Invisibly returns NULL.
Sets up standard GitHub Actions used by this package template and updates
workflow references. DOES NOT setup formatting, that is owned by setup_formatter().
setup_gha()setup_gha()
Invisibly returns NULL.
Writes a Bash pre-commit hook that runs format and lint checks.
setup_precommit()setup_precommit()
Invisibly returns NULL.
Write a modified Touchstone GHA to benchmark PRs. You still
need to write an appropriate script.R for the actual
benchmarks. This version of the touchstone commenting GHA
updates a single comment instead of making multiple. Optionally
also adds the touchstone plots in a dropdown–these plots are
stored on a new branch.
setup_touchstone(plots = FALSE)setup_touchstone(plots = FALSE)
plots |
Whether to use the workflow which writes touchstone plots (and needs more permissions). |
Invisibly returns NULL.
Prompts for a license choice in interactive sessions and applies the selected
usethis license helper.
use_license()use_license()
Invisibly returns NULL.