Citation File Format (CFF)
The Citation File Format (CFF) is a human- and machine-readable file format in YAML 1.2 which provides citation metadata for software. The main website for CFF can be found at https://citation-file-format.github.io.
If you want to make your software easily citable, you can put a file called
CITATION.cff in the root of your repository. This file should provide at least the
minimally necessary metadata to cite your software. An example:
cff-version: 1.0.3 message: If you use this software, please cite it as below. authors: - family-names: Druskat given-names: Stephan orcid: https://orcid.org/0000-0003-4925-7248 title: My Research Tool version: 1.0.4 doi: 10.5281/zenodo.1234 date-released: 2017-12-18
This file can be used to provide much more information about your software. For an overview of what kind of metadata for software can be supplied with the Citation File Format, please see the current version of the format specifications.
There are a number of tools that can help you work with the Citation File Format.
- doi2cff: Automatically create a
CITATION.cfffile from a DOI (only for Zenodo DOIs).
- ruby-cff: Manipulate
CITATION.cfffiles in Ruby
- cff-converter-python: Python library for reading CFF files and converting them to, e.g., BibTeX
- cff-reader-java: Java library reading
CITATION.cfffiles into a POJO model
- schema: Validation schemas for
- github2cff: Attempt to produce a
CITATION.cfffile from github or gitlab metadata
Collaboration, contributions, questions, issues, bugs, etc.
This repository is the landing site for CFF. Please use it to submit issues concerning the format, and for questions, ideas, etc.!
Thanks for your interest in contributing! There are many ways to contribute to this project. Get started here.
Frequently Answered Questions (FAQs)
Why does the format not require a Digital Object Identifier (DOI) when citing a piece of software?
It would still be desirable to cite software for which there is no DOI. In this case, as much information to specify the precise version of the software and how it can be obtained should be given (e.g. a company and the company's product number for that software).
- Specifications and website (https://github.com/citation-file-format/citation-file-format.github.io):
The specifications prose is held in a repository from which a static website is built (with Jekyll). This website is hosted on GitHub via GitHub Pages. The
srcbranch holds the sources for specifications and website, the
masterbranch is where the live website lives.