You can use this function to create a new (pre)registration form. The "Creating a (pre)registration form" vignette explains how this works. That is available at or can be shown by running vignette("creating_prereg_form", package = "preregr").

  author = NA,
  date = format(Sys.Date(), "%Y-%m-%d"),



The form's title


The form's version. If there is only one version and the creators do not plan to release future version, the recommendation is to set the version to 1. If the creators have no clear idea about how to version the form (i.e. there may be improvements in the future), the recommendation is to set the first version to 0.0.1, and roughly adopt the system common for software: increment the first number when the form is substantially updated (e.g. such that preregistrations that used the previous version of the form may no longer be valid given the new version, for example becaue sections were added or removed, or value templates changed, etc), the third number for very small changes (e.g. typos, spelling corrections, clarification or extra explanations, bug fixes in regular expressions in value templates, etc), and the second number for changes in between (e.g. changing the order of items or moving an item to another section, or changing value templates to be more permissive (and so, retaining compatibility with (pre)registrations that used the previous version of the form)). In that case, use version 1.0.0 to signal that the form has reached maturity.


The authors of the form


The date the form was created


Additional field-content pairs to specify arbitrary metadata.


The preregr form object prefilled with some examples.


exampleForm <-
    title = "Example form",
    version = "0.1.0"

### Show the form summary
#> ── (Pre)registration form ──────────────────────────────────────────────────────
#>  Title: Example form
#>  Author: NA
#>  Date: 2023-05-04
#>  This form has 1 item in 1 section.