Although ProjectTemplate favours convention over configuration, it is possible to create custom templates that deviate from the standard templates. It should probably not be the first thing you experiment with, but the process is pretty easy.
First of all you need a location to store your custom template(s). To make it easier to refer to this location,
ProjectTemplate supports an
option to look for, and store, templates. To set this option use the following code:
> options(ProjectTemplate.templatedir = "/path/to/your/templates")
It is useful to store this in a
.Rprofile file that is loaded automatically when an R session starts.
To create a template you can use the
create.template function which takes two arguments:
minimaltemplate supplied with ProjectTemplate.
When only the template name is specified the new template will be created in the template directory. If the template directory is not configured the template will be created in the current directory.
create.project it is possible to specify the
template argument. The name specified is first lookup in
the template directory, then in the default installed templates, and finally in the current directory.
As a template essentially is just like any project directory the normal
migrate.project function could be used to
update the template with the latest changes from the package. However, as a convenience, a function
was created that does this for you by simply calling it with the template name. For example to upgrade a template called
default, you would call