citation-file-format
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.
https://github.com/citation-file-format/citation-file-format
Science Score: 67.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 5 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.2%) to scientific vocabulary
Keywords
Repository
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.
Basic Info
- Host: GitHub
- Owner: citation-file-format
- License: cc-by-4.0
- Language: Python
- Default Branch: main
- Homepage: http://citation-file-format.github.io
- Size: 31.1 MB
Statistics
- Stars: 498
- Watchers: 15
- Forks: 115
- Open Issues: 99
- Releases: 3
Topics
Metadata Files
README.md
Citation File Format
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.
Structure
You can specify citation metadata for your software (or dataset) in a file named CITATION.cff.
This is what a typical CITATION.cff file may look like for research software:
yaml
cff-version: 1.2.0
message: If you use this software, please cite it using these metadata.
title: My Research Software
abstract: This is my awesome research software. It does many things.
authors:
- family-names: Druskat
given-names: Stephan
orcid: "https://orcid.org/1234-5678-9101-1121"
- name: "The Research Software project"
version: 0.11.2
date-released: "2021-07-18"
identifiers:
- description: This is the collection of archived snapshots of all versions of My Research Software
type: doi
value: "10.5281/zenodo.123456"
- description: This is the archived snapshot of version 0.11.2 of My Research Software
type: doi
value: "10.5281/zenodo.123457"
license: Apache-2.0
repository-code: "https://github.com/citation-file-format/my-research-software"
In addition, the Citation File Format allows you to
- provide references to works that your software or dataset builds on (see here for more info);
- ask people to cite a different, related work instead of the software or dataset itself (see here for more info).
Format specifications :books:
You can find the complete format specifications in the Guide to the Citation File Format schema.
Why should I add a CITATION.cff file to my repository? :bulb:
When you do this, great things may happen:
- Users of your software can easily cite it using the metadata from
CITATION.cff! - If your repository is hosted on GitHub, they will show the citation information in the sidebar, which makes it easy for visitors to cite your software or dataset correctly.
- When you publish your software on Zenodo via the GitHub-Zenodo integration, they will use the metadata from your
CITATION.cfffile. - People can import the correct reference to your software into the Zotero reference manager via a browser plugin.
Creation :heavyplussign:
To create a CITATION.cff file, you can
- use the cffinit website,
- copy and paste the example snippet, and adapt it to your needs, or
- create a new file called
CITATION.cffusing the Add file button on GitHub, and use the template they provide.
Validation :heavycheckmark:
You can validate your CITATION.cff file on the command line with the cffconvert Python package:
```shell
Install cffconvert with pip in user space
python3 -m pip install --user cffconvert
Validate your CFF file
cffconvert --validate ```
If you get a Traceback with error messages, look for the relevant validation error and fix it.
If the output is very long, it may help if you search it for lines starting with jsonschema.exceptions.ValidationError.
If you prefer to use Docker, you can use the cffconvert Docker image:
bash
cd <directory-containing-your-CITATION.cff>
docker run --rm -v ${PWD}:/app citationcff/cffconvert --validate
Tools to work with CITATION.cff files :wrench:
There is tooling available to work with CITATION.cff files to do different things:
create new files, edit existing files, validate existing files, convert files from the Citation File Format into another format.
The following table gives an overview of the tools that we know about. If there is a tool missing from this table, please open a new issue and let us know.
| | Creation | Editing/Updating | Validation | Conversion |
| -------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Command line | | | • cffconvert | • cffconvert
• bibtex-to-cff
• cff-from-621
• openCARP-CI |
| GitHub Actions | | | cff-validator | • cffconvert
• codemeta2cff |
| GitHub Bot | | | #238 | |
| Docker | | | cffconvert Docker image | cffconvert Docker image |
| Go | | | | • datatools/codemeta2cff |
| Haskell | | • cffreference | | |
| Java | • CFF Maven plugin | • CFF Maven plugin | | • CFF Maven plugin |
| JavaScript | | | | • Citation.js plugin |
| Julia | | | • Bibliography.jl | • Bibliography.jl |
| PHP | | | | • bibtex-to-cff |
| Python | | • cff2toml
• doi2cff
• updateCitation | • cffconvert | • cff-from-621
• cff2toml
• cffconvert
• doi2cff
• openCARP-CI
• pybibtextocffconverter |
| R | | | • cffr | • citation
• r2cff
• handlr
• cffr |
| Ruby | • ruby-cff | • ruby-cff | • ruby-cff | • ruby-cff |
| Rust | • Aeruginous | • Aeruginous | | • citeworks |
| TypeScript | | | | #28 |
| Website | • cffinit | | | |
Maintainers :nerd_face:
The Citation File Format schema is maintained by
Contributing :handshake:
The Citation File Format is a collaborative project and we welcome suggestions and contributions. We hope one of the invitations below works for you, but if not, please let us know!
:running: I'm busy, I only have 1 minute - Tell a friend about the Citation File Format, or tweet about it! - Give the project a star :star:!
:hourglassflowingsand: I've got 10 minutes - tell me what I should do
- Create a CITATION.cff file for your repository.
- Suggest ideas for how you would like to use the Citation File Format, or for an improvement to the format or its tooling.
- If you know how to validate CITATION.cff files, help someone with a validation problem and look at the issues labeled
:computer: I've got a few hours to work on this
- Help create tooling for the community by looking at the issues labeled
:tada: I want to help grow the community - Write a blog post or news item for your own community. - Organise a hack event or workshop to help others use or improve the Citation File Format.
Please read the more detailed contributing guidelines and open a GitHub issue to suggest a new idea or let us know about bugs. Please put up pull requests for changes to the format and schema against the develop branch!
License :balance_scale:
Copyright © 2016 - 2023. The Citation File Format Contributors
This work is licensed under a Creative Commons Attribution 4.0 International (CC-BY-4.0) license.
Acknowledgments :pray:
We'd like to thank everyone who has contributed to the Citation File Format!
They are listed in the CITATION.cff file for this repository. Please open an issue if you find that you are missing from the file.
We gratefully acknowledge support from:
Owner
- Name: citation-file-format
- Login: citation-file-format
- Kind: organization
- Repositories: 13
- Profile: https://github.com/citation-file-format
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use CFF in your research, please cite it using these metadata."
abstract: CITATION.cff files are plain text files with human- and machine-readable citation information for software. Code developers can include them in their repositories to let others know how to correctly cite their software. This is the specification for the Citation File Format.
authors:
- family-names: Druskat
given-names: Stephan
orcid: https://orcid.org/0000-0003-4925-7248
- family-names: Spaaks
given-names: Jurriaan H.
orcid: https://orcid.org/0000-0002-7064-4069
- family-names: Chue Hong
given-names: Neil
orcid: https://orcid.org/0000-0002-8876-7606
- family-names: Haines
given-names: Robert
orcid: https://orcid.org/0000-0002-9538-7919
- family-names: Baker
given-names: James
orcid: https://orcid.org/0000-0002-2682-6922
- family-names: Bliven
given-names: Spencer
orcid: https://orcid.org/0000-0002-1200-1698
email: spencer.bliven@gmail.com
- family-names: Willighagen
given-names: Egon
orcid: https://orcid.org/0000-0001-7542-0286
- family-names: Pérez-Suárez
given-names: David
orcid: https://orcid.org/0000-0003-0784-6909
website: https://dpshelio.github.io
- family-names: Konovalov
given-names: Olexandr
orcid: https://orcid.org/0000-0001-5299-3292
title: Citation File Format
version: 1.2.0
identifiers:
- type: doi
value: 10.5281/zenodo.1003149
description: The concept DOI for the collection containing all versions of the Citation File Format.
- type: doi
value: 10.5281/zenodo.5171937
description: The versioned DOI for the version 1.2.0 of the Citation File Format.
date-released: "2021-08-09"
keywords:
- citation file format
- CFF
- citation files
- software citation
- file format
- YAML
- software sustainability
- research software
- credit
license: "CC-BY-4.0"
doi: 10.5281/zenodo.5171937
references:
- authors:
- family-names: Smith
given-names: Arfon M.
- family-names: Katz
given-names: Daniel S.
- family-names: Niemeyer
given-names: Kyle E.
- name: "FORCE11 Software Citation Working Group"
doi: 10.7717/peerj-cs.86
journal: "PeerJ Computer Science"
month: 9
start: e86
title: "Software citation principles"
type: article
volume: 2
year: 2016
- authors:
- family-names: Druskat
given-names: Stephan
conference:
name: "Workshop on Sustainable Software for Science: Practice and Experiences (WSSSPE5.1)"
doi: 10.6084/m9.figshare.3827058
title: "Track 2 Lightning Talk: Should CITATION files be standardized?"
type: proceedings
year: 2017
- authors:
- family-names: Wilson
given-names: Robin
title: "Encouraging citation of software - introducing CITATION files."
type: blog
url: "https://www.software.ac.uk/blog/2013-09-02-encouraging-citation-software-introducing-citation-files"
year: 2013
- authors:
- family-names: Ben-Kiki
given-names: Oren
- family-names: Evans
given-names: Clark
- family-names: "döt Net"
given-names: Ingy
title: "YAML Ain't Markup Language (YAML) Version 1.2. 3rd Edition, Patched at 2009-10-01."
url: "https://yaml.org/spec/1.2/spec.html"
type: standard
year: 2009
- authors:
- family-names: Hufflen
given-names: Jean-Michel
collection-title: "Proceedings of the 2006 Annual Meeting"
end: 253
month: 11
number: 2
start: 243
title: "Names in bibtex and mlBibTeX"
url: "https://www.tug.org/TUGboat/tb27-2/tb87hufflen.pdf"
type: proceedings
volume: 27
year: 2006
- authors:
- name: GitHub, Inc.
abstract: Good security practices for using GitHub Actions features.
date-published: 2022-09-14
date-accessed: 2022-09-20
title: Security hardening for GitHub Actions
url: https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions
type: blog
GitHub Events
Total
- Issues event: 23
- Watch event: 50
- Delete event: 3
- Issue comment event: 38
- Push event: 9
- Pull request event: 8
- Fork event: 9
- Create event: 2
Last Year
- Issues event: 23
- Watch event: 50
- Delete event: 3
- Issue comment event: 38
- Push event: 9
- Pull request event: 8
- Fork event: 9
- Create event: 2
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 11
- Total pull requests: 4
- Average time to close issues: about 2 months
- Average time to close pull requests: about 1 month
- Total issue authors: 9
- Total pull request authors: 4
- Average comments per issue: 0.91
- Average comments per pull request: 0.25
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 11
- Pull requests: 4
- Average time to close issues: about 2 months
- Average time to close pull requests: about 1 month
- Issue authors: 9
- Pull request authors: 4
- Average comments per issue: 0.91
- Average comments per pull request: 0.25
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- sdruskat (13)
- jspaaks (9)
- willynilly (2)
- acli (2)
- rettinghaus (2)
- yarikoptic (2)
- abelsiqueira (1)
- alexlancaster (1)
- sabinekraml (1)
- mateuszpawlik (1)
- hunterhogan (1)
- NeuroShepherd (1)
- kevinmatthes (1)
- stertooy (1)
- ocaisa (1)
Pull Request Authors
- jspaaks (19)
- sdruskat (5)
- cyr1l0u (1)
- johentsch (1)
- kurtmckee (1)
- kevinmatthes (1)
- rettinghaus (1)
- willynilly (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v2 composite
- citation-file-format/cffconvert-github-action 2.0.0 composite
- actions/checkout v2.3.4 composite
- gaurav-nelson/github-action-markdown-link-check v1 composite
- actions/checkout v2 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v3 composite
- codespell-project/actions-codespell v2 composite
- bump2version *
- cffconvert *
- jsonschema *
- pytest *
- ruamel.yaml *