cffr
cffr: Generate Citation File Format Metadata for R Packages - Published in JOSS (2021)
Science Score: 98.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 9 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
○Committers with academic emails
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Keywords from Contributors
Repository
Generate Citation File Format (cff) Metadata for R Packages
Basic Info
- Host: GitHub
- Owner: ropensci
- License: gpl-3.0
- Language: R
- Default Branch: main
- Homepage: https://docs.ropensci.org/cffr/
- Size: 4.35 MB
Statistics
- Stars: 26
- Watchers: 3
- Forks: 3
- Open Issues: 0
- Releases: 17
Topics
Metadata Files
README.Rmd
---
output: github_document
bibliography: inst/REFERENCES.bib
link-citations: yes
---
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```
# cffr
[](https://CRAN.R-project.org/package=cffr)
[](https://cran.r-project.org/web/checks/check_results_cffr.html)
[](https://cran.r-project.org/package=cffr)
[](https://github.com/ropensci/cffr/actions/workflows/check-full.yaml)
[](https://github.com/ropensci/cffr/actions/workflows/rhub.yaml)
[](https://app.codecov.io/gh/ropensci/cffr)
[](https://ropensci.r-universe.dev/cffr)
[](https://github.com/ropensci/cffr/actions/workflows/cff-validator.yml)
[](https://doi.org/10.21105/joss.03900)
[](https://www.repostatus.org/#active)

[](https://github.com/ropensci/software-review/issues/463)
**cffr** provides utilities to generate, coerce, modify and validate
`CITATION.cff` files automatically for **R** packages, as well as tools and
examples for working with .cff more generally.
## What is a `CITATION.cff` file?
[Citation File Format (CFF](https://citation-file-format.github.io/))
[@druskat_citation_2021] (v1.2.0) are plain text files with human- and
machine-readable citation information for software (and datasets). Code
developers can include them in their repositories to let others know how to
correctly cite their software.
This format is becoming popular within the software citation ecosystem. Recently
[GitHub](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files),
[Zenodo](https://citation-file-format.github.io/#/supported-by-zenodo-) and
[Zotero](https://citation-file-format.github.io/#/supported-by-zotero-) have
included full support of this citation format [@druskat_stephan_making_2021].
GitHub support is of special interest:
```{r echo=FALSE, out.width="400", fig.align='center', fig.alt="Tweet of Nat Friedman about CFF files"}
knitr::include_graphics("vignettes/tweet-1.png")
```
*--- Nat Friedman (\@natfriedman) July 27, 2021*
See [Enhanced support for citations on
GitHub](https://github.blog/news-insights/company-news/enhanced-support-citations-github/)
[@smith2021] for more info.
### Related projects
[The CodeMeta Project](https://codemeta.github.io/) [@jones2017] creates a
concept vocabulary that can be used to standardize the exchange of software
metadata across repositories and organizations. One of the many uses of a
`codemeta.json` file (created following the standards defined on The CodeMeta
Project) is to provide citation metadata such as title, authors, publication
year, and venue [@fenner2021]. The packages **codemeta** [@codemeta] /
**codemetar** [@codemetar2021] allows to generate `codemeta.json` files from R
packages metadata.
## The cffr package
**cffr** maximizes the data extraction by using both the `DESCRIPTION` file and
the `CITATION` file (if present) of your package. Note that **cffr** works best
if your package pass `R CMD check/devtools::check()`.
```{r count_cffr, echo=FALSE, results='asis'}
cat("\n")
today <- Sys.Date()
# Try get the count of GitHub repos here
token <- (Sys.getenv(c("GITHUB_PAT", "GITHUB_TOKEN")))
token <- token[!token %in% c(NA, NULL, "")][1]
ghtoken <- paste("token", token)
tmpfile <- tempfile(fileext = ".json")
# Get numbers of repos
api_url <- paste0(
"https://api.github.com/search/code?q=cffr+extension:",
"cff+filename:CITATION"
)
res <- tryCatch(
download.file(api_url,
tmpfile,
quiet = TRUE,
headers = c(Authorization = ghtoken)
),
warning = function(e) {
return(TRUE)
},
error = function(e) {
return(TRUE)
}
)
# If not successful
if (isTRUE(res)) {
cat(paste0(
"\n", "See [some projects already using **cffr**]",
"(https://github.com/search?q=cffr%20path%3A**%2FCITATION.cff&type=code)",
"."
))
} else {
nreps <- as.integer(jsonlite::read_json(tmpfile)$total_count)
cat(paste0(
"As per ", today, " there are at least ", nreps,
" repos on GitHub using **cffr**. ", "[Check them out here]",
"(https://github.com/search?q=cffr%20path%3A**%2FCITATION.",
"cff&type=code)."
))
}
cat("\n")
```
### Installation
Install **cffr** from [CRAN](https://CRAN.R-project.org/package=cffr):
```{r, eval=FALSE}
install.packages("cffr")
```
You can install the developing version of **cffr** with:
```{r, eval=FALSE}
remotes::install_github("ropensci/cffr")
```
Alternatively, you can install **cffr** using the
[r-universe](https://ropensci.r-universe.dev/cffr):
```{r, eval=FALSE}
# Install cffr in R:
install.packages("cffr",
repos = c("https://ropensci.r-universe.dev", "https://cloud.r-project.org")
)
```
### Example
By default most often from within your package folder you'll simply run
`cff_write()`, that creates a `cff` object, write it on a `CITATION.cff` file
and validates it on a single command:
```{r, eval=FALSE}
library(cffr)
# For in-development packages
cff_write()
#>
#> CITATION.cff generated
#>
#> cff_validate results-----
#> Congratulations! This .cff file is valid
```
However, **cffr** provides also custom print methods and mechanisms that allows
you to customize the `CITATION.cff` and integrate them in your workflows.
This is a basic example which shows you how to create a `cff` object (see `?cff`
for more info). In this case, we are creating a `cff` object from the metadata
of the **rmarkdown** package:
```{r }
library(cffr)
# Example with an installed package
test <- cff_create("rmarkdown")
```
CITATION.cff for rmarkdown
```{r, echo=FALSE, comment=""}
test
```
We can validate the result using `cff_validate()`:
```{r }
cff_validate(test)
```
Check the [docs](https://docs.ropensci.org/cffr//reference/index.html) and
`vignette("cffr", package = "cffr")` to learn how to work with `cff` objects.
### Keep your `CITATION.cff` file up-to-date
#### GitHub Actions
The easiest way for keeping you `CITATION.cff` file up-to-date is using GitHub
Actions. Use `cff_gha_update()`function to install a GitHub Action that would
update your `CITATION.cff` file on the following events:
- When you publish a new release of the package on your GitHub repo.
- Each time that you modify your DESCRIPTION or inst/CITATION files.
- The action can be run also manually.
```{r, eval=FALSE}
cff_gha_update()
#> Installing update-citation-cff.yaml on './.github/workflows'
#> Adding .github to .Rbuildignore
```
See the example workflow file
[here](https://github.com/ropensci/cffr/blob/main/.github/workflows/update-citation-cff.yaml).
#### Git pre-commit hook [](https://lifecycle.r-lib.org/articles/stages.html#experimental)
You can also use a [git pre-commit
hook](https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks#_committing_workflow_hooks):
> The `pre-commit` hook is run first, before you even type in a commit message.
> It's used to inspect the snapshot that's about to be committed, to see if
> you've forgotten something, to make sure tests run, or to examine whatever you
> need to inspect in the code. Exiting non-zero from this hook aborts the
> commit, although you can bypass it with `git commit --no-verify`.
A specific pre-commit hook can be installed with `cff_git_hook_install()`. If
you want to use a pre-commit hook, please make sure you have the **testthat**
package installed.
### Learn more
Check the following articles to learn more about **cffr**:
- [cffr: Create a CITATION.cff File for your R
Package](https://ropensci.org/blog/2021/11/23/cffr/)
- [How I Test cffr on (about) 2,000 Packages using GitHub Actions and
R-universe](https://ropensci.org/blog/2021/11/23/how-i-test-cffr/)
## Related packages
- **citation** [@citation22] includes a function `r2cff` that creates a
`CITATION.cff` file (v1.1.0) using the information of your `DESCRIPTION`
file. It also provide minimal validity checks.
- **handlr** [@handlr]: Tool for converting among citation formats, including
`*.cff` files.
- **codemeta** [@codemeta] / **codemetar** [@codemetar2021] provides similar
solutions for creating `codemeta.json` file, another format for storing and
sharing software metadata.
## Citation
Hernangómez, D., (2021). cffr: Generate Citation File Format Metadata for R
Packages. Journal of Open Source Software, 6(67), 3900,
A BibTeX entry for LaTeX users is:
``` bibtex
@article{hernangomez2021,
title = {{cffr}: Generate Citation File Format Metadata for {R} Packages},
author = {Diego Hernangómez},
year = 2021,
journal = {Journal of Open Source Software},
publisher = {The Open Journal},
volume = 6,
number = 67,
pages = 3900,
doi = {10.21105/joss.03900},
url = {https://doi.org/10.21105/joss.03900}
}
```
You can also use the [citation provided by
GitHub](https://github.com/ropensci/cffr), that is generated from the
information of a `CITATION.cff` created with **cffr**. See [About CITATION
files](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files)
for more info.
## References
::: {#refs}
:::
[](https://ropensci.org)
## Contributors
All contributions to this project are gratefully acknowledged using the [`allcontributors` package](https://github.com/ropensci/allcontributors) following the [allcontributors](https://allcontributors.org) specification. Contributions of any kind are welcome!
### Code
dieghernan
dpprdan
### Issue Authors
Bisaloo
jeroen
joelnitta
jeyabbalas
aadler
larnsce
iembry
IndrajeetPatil
roaldarbol
nfrerebeau
Pakillo
### Issue Contributors
arfon
hainesr
llrs
njtierney
zeileis
Owner
- Name: rOpenSci
- Login: ropensci
- Kind: organization
- Email: info@ropensci.org
- Location: Berkeley, CA
- Website: https://ropensci.org/
- Twitter: rOpenSci
- Repositories: 307
- Profile: https://github.com/ropensci
JOSS Publication
cffr: Generate Citation File Format Metadata for R Packages
Tags
R cff citation credit metadataCitation (CITATION.cff)
# --------------------------------------------
# CITATION file created with {cffr} R package
# See also: https://docs.ropensci.org/cffr/
# --------------------------------------------
cff-version: 1.2.0
message: 'To cite package "cffr" in publications use:'
type: software
license: GPL-3.0-or-later
title: 'cffr: Generate Citation File Format (''cff'') Metadata for R Packages'
version: 1.2.0.9000
doi: 10.21105/joss.03900
identifiers:
- type: doi
value: 10.32614/CRAN.package.cffr
abstract: The Citation File Format version 1.2.0 <https://doi.org/10.5281/zenodo.5171937>
is a human and machine readable file format which provides citation metadata for
software. This package provides core utilities to generate and validate this metadata.
authors:
- family-names: Hernangómez
given-names: Diego
email: diego.hernangomezherrero@gmail.com
orcid: https://orcid.org/0000-0001-8457-4658
preferred-citation:
type: article
title: 'cffr: Generate Citation File Format Metadata for R Packages'
authors:
- family-names: Hernangómez
given-names: Diego
email: diego.hernangomezherrero@gmail.com
orcid: https://orcid.org/0000-0001-8457-4658
doi: 10.21105/joss.03900
url: https://doi.org/10.21105/joss.03900
year: '2021'
publisher:
name: The Open Journal
volume: '6'
issue: '67'
journal: Journal of Open Source Software
start: '3900'
repository: https://CRAN.R-project.org/package=cffr
repository-code: https://github.com/ropensci/cffr
url: https://docs.ropensci.org/cffr/
contact:
- family-names: Hernangómez
given-names: Diego
email: diego.hernangomezherrero@gmail.com
orcid: https://orcid.org/0000-0001-8457-4658
keywords:
- attribution
- citation
- credit
- citation-files
- cff
- metadata
- citation-file-format
- cran
- r
- r-package
- ropensci
- rstats
- r-cran
references:
- type: generic
title: Citation File Format
authors:
- family-names: Druskat
given-names: Stephan
- family-names: Spaaks
given-names: Jurriaan H.
- family-names: Chue Hong
given-names: Neil
- family-names: Haines
given-names: Robert
- family-names: Baker
given-names: James
- family-names: Bliven
given-names: Spencer
- family-names: Willighagen
given-names: Egon
- family-names: Pérez-Suárez
given-names: David
- family-names: Konovalov
given-names: Alexander
year: '2021'
month: '8'
doi: 10.5281/zenodo.5171937
url: https://github.com/citation-file-format/citation-file-format
date-accessed: '2021-11-07'
copyright: CC-BY-4.0
abstract: The Citation File Format lets you provide citation metadata for software
or datasets in plaintext files that are easy to read by both humans and machines.
- type: software
title: 'R: A Language and Environment for Statistical Computing'
notes: Depends
url: https://www.R-project.org/
authors:
- name: R Core Team
institution:
name: R Foundation for Statistical Computing
address: Vienna, Austria
year: '2025'
version: '>= 4.0.0'
- type: software
title: cli
abstract: 'cli: Helpers for Developing Command Line Interfaces'
notes: Imports
url: https://cli.r-lib.org
repository: https://CRAN.R-project.org/package=cli
authors:
- family-names: Csárdi
given-names: Gábor
email: gabor@posit.co
year: '2025'
doi: 10.32614/CRAN.package.cli
version: '>= 2.0.0'
- type: software
title: desc
abstract: 'desc: Manipulate DESCRIPTION Files'
notes: Imports
url: https://desc.r-lib.org/
repository: https://CRAN.R-project.org/package=desc
authors:
- family-names: Csárdi
given-names: Gábor
email: csardi.gabor@gmail.com
- family-names: Müller
given-names: Kirill
- family-names: Hester
given-names: Jim
email: james.f.hester@gmail.com
year: '2025'
doi: 10.32614/CRAN.package.desc
version: '>= 1.3.0'
- type: software
title: jsonlite
abstract: 'jsonlite: A Simple and Robust JSON Parser and Generator for R'
notes: Imports
url: https://jeroen.r-universe.dev/jsonlite
repository: https://CRAN.R-project.org/package=jsonlite
authors:
- family-names: Ooms
given-names: Jeroen
email: jeroenooms@gmail.com
orcid: https://orcid.org/0000-0002-4035-0289
year: '2025'
doi: 10.32614/CRAN.package.jsonlite
version: '>= 1.7.2'
- type: software
title: jsonvalidate
abstract: 'jsonvalidate: Validate ''JSON'' Schema'
notes: Imports
url: https://docs.ropensci.org/jsonvalidate/
repository: https://CRAN.R-project.org/package=jsonvalidate
authors:
- family-names: FitzJohn
given-names: Rich
email: rich.fitzjohn@gmail.com
- family-names: Ashton
given-names: Rob
- family-names: Buus
given-names: Mathias
- family-names: Poberezkin
given-names: Evgeny
year: '2025'
doi: 10.32614/CRAN.package.jsonvalidate
version: '>= 1.1.0'
- type: software
title: yaml
abstract: 'yaml: Methods to Convert R Data to YAML and Back'
notes: Imports
url: https://github.com/vubiostat/r-yaml/
repository: https://CRAN.R-project.org/package=yaml
authors:
- family-names: Garbett
given-names: Shawn P
- family-names: Stephens
given-names: Jeremy
- family-names: Simonov
given-names: Kirill
- family-names: Xie
given-names: Yihui
- family-names: Dong
given-names: Zhuoer
- family-names: Wickham
given-names: Hadley
- family-names: Horner
given-names: Jeffrey
- name: reikoch
- family-names: Beasley
given-names: Will
- family-names: O'Connor
given-names: Brendan
- family-names: Warnes
given-names: Gregory R.
- family-names: Quinn
given-names: Michael
- family-names: Kamvar
given-names: Zhian N.
- family-names: Gao
given-names: Charlie
year: '2025'
doi: 10.32614/CRAN.package.yaml
version: '>= 2.2.1'
- type: software
title: bibtex
abstract: 'bibtex: Bibtex Parser'
notes: Suggests
url: https://docs.ropensci.org/bibtex/
repository: https://CRAN.R-project.org/package=bibtex
authors:
- family-names: Francois
given-names: Romain
email: romain@purrple.cat
orcid: https://orcid.org/0000-0002-2444-4226
- family-names: Hernangómez
given-names: Diego
email: diego.hernangomezherrero@gmail.com
orcid: https://orcid.org/0000-0001-8457-4658
year: '2025'
doi: 10.32614/CRAN.package.bibtex
version: '>= 0.5.0'
- type: software
title: knitr
abstract: 'knitr: A General-Purpose Package for Dynamic Report Generation in R'
notes: Suggests
url: https://yihui.org/knitr/
repository: https://CRAN.R-project.org/package=knitr
authors:
- family-names: Xie
given-names: Yihui
email: xie@yihui.name
orcid: https://orcid.org/0000-0003-0645-5666
year: '2025'
doi: 10.32614/CRAN.package.knitr
- type: software
title: lifecycle
abstract: 'lifecycle: Manage the Life Cycle of your Package Functions'
notes: Suggests
url: https://lifecycle.r-lib.org/
repository: https://CRAN.R-project.org/package=lifecycle
authors:
- family-names: Henry
given-names: Lionel
email: lionel@posit.co
- family-names: Wickham
given-names: Hadley
email: hadley@posit.co
orcid: https://orcid.org/0000-0003-4757-117X
year: '2025'
doi: 10.32614/CRAN.package.lifecycle
- type: software
title: rmarkdown
abstract: 'rmarkdown: Dynamic Documents for R'
notes: Suggests
url: https://pkgs.rstudio.com/rmarkdown/
repository: https://CRAN.R-project.org/package=rmarkdown
authors:
- family-names: Allaire
given-names: JJ
email: jj@posit.co
- family-names: Xie
given-names: Yihui
email: xie@yihui.name
orcid: https://orcid.org/0000-0003-0645-5666
- family-names: Dervieux
given-names: Christophe
email: cderv@posit.co
orcid: https://orcid.org/0000-0003-4474-2498
- family-names: McPherson
given-names: Jonathan
email: jonathan@posit.co
- family-names: Luraschi
given-names: Javier
- family-names: Ushey
given-names: Kevin
email: kevin@posit.co
- family-names: Atkins
given-names: Aron
email: aron@posit.co
- family-names: Wickham
given-names: Hadley
email: hadley@posit.co
- family-names: Cheng
given-names: Joe
email: joe@posit.co
- family-names: Chang
given-names: Winston
email: winston@posit.co
- family-names: Iannone
given-names: Richard
email: rich@posit.co
orcid: https://orcid.org/0000-0003-3925-190X
year: '2025'
doi: 10.32614/CRAN.package.rmarkdown
- type: software
title: testthat
abstract: 'testthat: Unit Testing for R'
notes: Suggests
url: https://testthat.r-lib.org
repository: https://CRAN.R-project.org/package=testthat
authors:
- family-names: Wickham
given-names: Hadley
email: hadley@posit.co
year: '2025'
doi: 10.32614/CRAN.package.testthat
version: '>= 3.0.0'
- type: software
title: usethis
abstract: 'usethis: Automate Package and Project Setup'
notes: Suggests
url: https://usethis.r-lib.org
repository: https://CRAN.R-project.org/package=usethis
authors:
- family-names: Wickham
given-names: Hadley
email: hadley@posit.co
orcid: https://orcid.org/0000-0003-4757-117X
- family-names: Bryan
given-names: Jennifer
email: jenny@posit.co
orcid: https://orcid.org/0000-0002-6983-2759
- family-names: Barrett
given-names: Malcolm
email: malcolmbarrett@gmail.com
orcid: https://orcid.org/0000-0003-0299-5825
- family-names: Teucher
given-names: Andy
email: andy.teucher@posit.co
orcid: https://orcid.org/0000-0002-7840-692X
year: '2025'
doi: 10.32614/CRAN.package.usethis
CodeMeta (codemeta.json)
{
"@context": "https://doi.org/10.5063/schema/codemeta-2.0",
"@type": "SoftwareSourceCode",
"identifier": "cffr",
"description": "The Citation File Format version 1.2.0 <doi:10.5281/zenodo.5171937> is a human and machine readable file format which provides citation metadata for software. This package provides core utilities to generate and validate this metadata.",
"name": "cffr: Generate Citation File Format ('cff') Metadata for R Packages",
"relatedLink": [
"https://docs.ropensci.org/cffr/",
"https://CRAN.R-project.org/package=cffr"
],
"codeRepository": "https://github.com/ropensci/cffr",
"issueTracker": "https://github.com/ropensci/cffr/issues",
"license": "https://spdx.org/licenses/GPL-3.0",
"version": "1.2.0.9000",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "R",
"url": "https://r-project.org"
},
"runtimePlatform": "R version 4.5.1 (2025-06-13)",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"author": [
{
"@type": "Person",
"givenName": "Diego",
"familyName": "Hernangómez",
"email": "diego.hernangomezherrero@gmail.com",
"@id": "https://orcid.org/0000-0001-8457-4658"
}
],
"copyrightHolder": [
{
"@type": "Person",
"givenName": "Diego",
"familyName": "Hernangómez",
"email": "diego.hernangomezherrero@gmail.com",
"@id": "https://orcid.org/0000-0001-8457-4658"
}
],
"maintainer": [
{
"@type": "Person",
"givenName": "Diego",
"familyName": "Hernangómez",
"email": "diego.hernangomezherrero@gmail.com",
"@id": "https://orcid.org/0000-0001-8457-4658"
}
],
"softwareSuggestions": [
{
"@type": "SoftwareApplication",
"identifier": "bibtex",
"name": "bibtex",
"version": ">= 0.5.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=bibtex"
},
{
"@type": "SoftwareApplication",
"identifier": "knitr",
"name": "knitr",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=knitr"
},
{
"@type": "SoftwareApplication",
"identifier": "lifecycle",
"name": "lifecycle",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=lifecycle"
},
{
"@type": "SoftwareApplication",
"identifier": "rmarkdown",
"name": "rmarkdown",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=rmarkdown"
},
{
"@type": "SoftwareApplication",
"identifier": "testthat",
"name": "testthat",
"version": ">= 3.0.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=testthat"
},
{
"@type": "SoftwareApplication",
"identifier": "usethis",
"name": "usethis",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=usethis"
}
],
"softwareRequirements": {
"1": {
"@type": "SoftwareApplication",
"identifier": "R",
"name": "R",
"version": ">= 4.0.0"
},
"2": {
"@type": "SoftwareApplication",
"identifier": "cli",
"name": "cli",
"version": ">= 2.0.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=cli"
},
"3": {
"@type": "SoftwareApplication",
"identifier": "desc",
"name": "desc",
"version": ">= 1.3.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=desc"
},
"4": {
"@type": "SoftwareApplication",
"identifier": "jsonlite",
"name": "jsonlite",
"version": ">= 1.7.2",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=jsonlite"
},
"5": {
"@type": "SoftwareApplication",
"identifier": "jsonvalidate",
"name": "jsonvalidate",
"version": ">= 1.1.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=jsonvalidate"
},
"6": {
"@type": "SoftwareApplication",
"identifier": "yaml",
"name": "yaml",
"version": ">= 2.2.1",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=yaml"
},
"SystemRequirements": null
},
"isPartOf": "https://ropensci.org",
"keywords": [
"attribution",
"citation",
"credit",
"citation-files",
"cff",
"metadata",
"citation-file-format",
"cran",
"r",
"r-package",
"ropensci",
"rstats",
"r-cran"
],
"fileSize": "982.903KB",
"citation": [
{
"@type": "ScholarlyArticle",
"datePublished": "2021",
"author": [
{
"@type": "Person",
"givenName": "Diego",
"familyName": "Hernangómez"
}
],
"name": "{cffr}: Generate Citation File Format Metadata for {R} Packages",
"identifier": "10.21105/joss.03900",
"url": "https://doi.org/10.21105/joss.03900",
"pagination": "3900",
"@id": "https://doi.org/10.21105/joss.03900",
"sameAs": "https://doi.org/10.21105/joss.03900",
"isPartOf": {
"@type": "PublicationIssue",
"issueNumber": "67",
"datePublished": "2021",
"isPartOf": {
"@type": [
"PublicationVolume",
"Periodical"
],
"volumeNumber": "6",
"name": "Journal of Open Source Software"
}
}
},
{
"@type": "CreativeWork",
"datePublished": "2021",
"author": [
{
"@type": "Person",
"givenName": "Stephan",
"familyName": "Druskat"
},
{
"@type": "Person",
"givenName": [
"Jurriaan",
"H."
],
"familyName": "Spaaks"
},
{
"@type": "Person",
"givenName": "Neil",
"familyName": "Chue Hong"
},
{
"@type": "Person",
"givenName": "Robert",
"familyName": "Haines"
},
{
"@type": "Person",
"givenName": "James",
"familyName": "Baker"
},
{
"@type": "Person",
"givenName": "Spencer",
"familyName": "Bliven"
},
{
"@type": "Person",
"givenName": "Egon",
"familyName": "Willighagen"
},
{
"@type": "Person",
"givenName": "David",
"familyName": "Pérez-Suárez"
},
{
"@type": "Person",
"givenName": "Alexander",
"familyName": "Konovalov"
}
],
"name": "Citation {File} {Format}",
"identifier": "10.5281/zenodo.5171937",
"url": "https://github.com/citation-file-format/citation-file-format",
"@id": "https://doi.org/10.5281/zenodo.5171937",
"sameAs": "https://doi.org/10.5281/zenodo.5171937"
}
],
"releaseNotes": "https://github.com/ropensci/cffr/blob/main/NEWS.md",
"readme": "https://github.com/ropensci/cffr/blob/main/README.md",
"contIntegration": [
"https://github.com/ropensci/cffr/actions/workflows/check-full.yaml",
"https://github.com/ropensci/cffr/actions/workflows/rhub.yaml",
"https://app.codecov.io/gh/ropensci/cffr",
"https://github.com/ropensci/cffr/actions/workflows/cff-validator.yml"
],
"developmentStatus": [
"https://www.repostatus.org/#active",
"https://lifecycle.r-lib.org/articles/stages.html#experimental"
],
"review": {
"@type": "Review",
"url": "https://github.com/ropensci/software-review/issues/463",
"provider": "https://ropensci.org"
}
}
GitHub Events
Total
- Create event: 9
- Release event: 1
- Issues event: 15
- Watch event: 3
- Delete event: 7
- Issue comment event: 31
- Push event: 46
- Pull request review event: 1
- Pull request review comment event: 2
- Pull request event: 13
- Fork event: 1
Last Year
- Create event: 9
- Release event: 1
- Issues event: 15
- Watch event: 3
- Delete event: 7
- Issue comment event: 31
- Push event: 46
- Pull request review event: 1
- Pull request review comment event: 2
- Pull request event: 13
- Fork event: 1
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| dieghernan | d****o@g****m | 646 |
| github-actions[bot] | 4****] | 54 |
| dependabot[bot] | 4****] | 4 |
| ImgBotApp | I****p@g****m | 3 |
| unknown | 3 | |
| Daniel Possenriede | p****e@g****m | 1 |
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 42
- Total pull requests: 57
- Average time to close issues: 26 days
- Average time to close pull requests: 4 days
- Total issue authors: 14
- Total pull request authors: 4
- Average comments per issue: 1.69
- Average comments per pull request: 0.58
- Merged pull requests: 48
- Bot issues: 1
- Bot pull requests: 14
Past Year
- Issues: 8
- Pull requests: 12
- Average time to close issues: 22 days
- Average time to close pull requests: about 8 hours
- Issue authors: 4
- Pull request authors: 2
- Average comments per issue: 1.88
- Average comments per pull request: 1.08
- Merged pull requests: 8
- Bot issues: 0
- Bot pull requests: 6
Top Authors
Issue Authors
- dieghernan (22)
- roaldarbol (5)
- larnsce (3)
- Pakillo (2)
- joelnitta (1)
- dpprdan (1)
- Bisaloo (1)
- aadler (1)
- IndrajeetPatil (1)
- jeyabbalas (1)
- github-actions[bot] (1)
- iembry (1)
- nfrerebeau (1)
- jeroen (1)
Pull Request Authors
- dieghernan (50)
- dependabot[bot] (10)
- imgbot[bot] (4)
- dpprdan (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
-
Total downloads:
- cran 1,695 last-month
- Total docker downloads: 2,145
-
Total dependent packages: 4
(may contain duplicates) -
Total dependent repositories: 6
(may contain duplicates) - Total versions: 22
- Total maintainers: 1
cran.r-project.org: cffr
Generate Citation File Format ('cff') Metadata for R Packages
- Homepage: https://docs.ropensci.org/cffr/
- Documentation: http://cran.r-project.org/web/packages/cffr/cffr.pdf
- License: GPL (≥ 3)
-
Latest release: 1.2.0
published 11 months ago
Rankings
Maintainers (1)
conda-forge.org: r-cffr
- Homepage: https://docs.ropensci.org/cffr/
- License: GPL-3.0-or-later
-
Latest release: 0.4.0
published about 3 years ago
Rankings
Dependencies
- R >= 3.6.0 depends
- crayon >= 1.4.1 imports
- desc >= 1.3.0 imports
- jsonlite >= 1.7.2 imports
- jsonvalidate >= 1.1.0 imports
- yaml >= 2.2.1 imports
- knitr * suggests
- lifecycle * suggests
- rmarkdown * suggests
- testthat >= 3.0.0 suggests
- usethis * suggests
- actions/checkout v3 composite
- dieghernan/cff-validator main composite
- actions/checkout v3 composite
- r-lib/actions/check-r-package v2 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
- actions/checkout v3 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
- actions/checkout v3 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
- actions/checkout v3 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
- actions/checkout v3 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
- actions/checkout v3 composite
- r-lib/actions/check-r-package v2 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
