Create a package the usethis way with a number of infrastructure commands executed to save you hassle

createPackageProject(
  name,
  title = NULL,
  folder = getwd(),
  initial_status = "wip",
  coverage = "codecov",
  git = TRUE,
  pkgdown = TRUE,
  external_setup = list(git_service = "GitHub", login = gh::gh_whoami()$login, private =
    FALSE, protocol = "ssh", ci_activation = "travis"),
  reset = TRUE,
  open = FALSE
)

create_package_project(
  name,
  title = NULL,
  folder = getwd(),
  initial_status = "wip",
  coverage = "codecov",
  git = TRUE,
  pkgdown = TRUE,
  external_setup = list(git_service = "GitHub", login = gh::gh_whoami()$login, private =
    FALSE, protocol = "ssh", ci_activation = "travis"),
  reset = TRUE,
  open = FALSE
)

Arguments

name

Project / package name

title

"What the Project Does (One Line, Title Case)" If NULL, a random one will be generated.

folder

Folder under which to create the project

initial_status

initial repostatus.org status for the project, whose badge will be added to the README.

coverage

What code coverage platform to use, NULL, "codecov" or "coveralls".

git

Configure Git

pkgdown

Add a pkgdown config file

external_setup

How to do the partly interactive setup of online git, CI and coverage platforms. If NULL, no setup.

  • git_service Only "GitHub" is supported at the moment.

  • login username or organization name to use for the git service. If NULL, no GitHub repo is created.

  • private whether to make the created repo private

  • protocol "ssh" or "https", protocol to use for GitHub

  • ci_activation Only NULL, and "travis" are supported at the moment. "travis" means calling usethis::use_travis() and adding the Travis badge to the README.

reset

Whether to reset the project to current project

open

Whether to open the newly created project (in another RStudio session)

Functions

  • create_package_project: aesthetic addition for continuity purposes

Examples

if (FALSE) { folder <- tempdir() createPackageProject( name = "doggos", title = "Counting cute dogs", folder = folder, git = TRUE, external_setup = NULL, reset = TRUE, open = FALSE ) list.files(file.path(folder, "doggos")) unlink(file.path(folder, "doggos")) }