codecheck is an R package to assist codecheckers in creating
CODECHECK-ready workspaces and conducting codechecks. This package
focuses on the technical workflow for codecheckers using R. It also
contains helper functions for managing the CODECHECK
register.
For general information about the CODECHECK initiative and community processes, visit https://codecheck.org.uk/.
The package is not on CRAN yet. Install the current version from GitHub with:
# install.packages("remotes")
remotes::install_github("codecheckers/codecheck")For first-time codecheckers using this R package:
- Fork the research repository - Fork to the codecheckers organization on GitHub
- Clone and navigate to the repository root - Run R from the top-level directory of the research project
- Create CODECHECK files - Run
codecheck::create_codecheck_files()to generate:- A
codecheck.ymlconfiguration file with metadata (certificate ID, authors, manifest, etc.) - A
codecheck/directory with report templates
- A
- Define the manifest - List all computational outputs (figures,
tables, data files) that you’ve successfully reproduced in the
manifestsection ofcodecheck.yml - Complete the certificate - Fill in the report template and render it
- Create a record on Zenodo (or OSF, or ResearchEquals) and submit
the draft for feedback to your CODECHECK editor/contact person,
e.g., via a sharing link or the CODECHECK Zenodo community; push the
codecheck.ymlto the repository
- Certificate - The final report documenting your CODECHECK, which includes metadata, the manifest, and your assessment.
- codecheck.yml - The configuration file containing all CODECHECK metadata (paper details, authors, manifest, etc.)
- Manifest - A list of computational output files (figures, data
files, tables) that you have successfully reproduced during the
CODECHECK. Each manifest entry includes the file path and a brief
description. The manifest is defined in the
codecheck.yml.
See the getting started guide for step-by-step instructions on using the template and the workflow descriptions on the overall procedures.
Note on certificate templates: The R Markdown template created by this package can be used in multiple ways:
- Execute code in various languages (R, Python, bash, etc.) using knitr’s language engines
- Simply write your certificate narrative without executing any code
- Mix both approaches as needed
If you prefer working with Jupyter Notebooks (especially for Python-based projects), see the Python CODECHECK template based on a Jupyter Notebook.
The package uses
tinytest for tests. Run
test_all("/path/to/package") to run all tests interactively. Even
better, run the tests in a fresh install and temporary directory using
# assuming . is the package path
library(tinytest)
build_install_test(".")All contributions are welcome! See CONTRIBUTING.md for details.
Please note that the codecheck project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.
Copyright 2025 S. Eglen & D. Nüst. The codecheck package is published
under the MIT license, see file LICENSE.