Citation.js converts formats like BibTeX, Wikidata JSON and BibJSON to CSL-JSON to convert to other formats like APA, Vancouver, RIS and back to BibTeX.
Read the paper Citation.js: a format-independent, modular bibliography tool for the browser and command line.
Site • Repo • Getting Started • Documentation • Demo
Packages
citation-js/citation-js | replaces | larsgw/citation.js |
---|---|---|
This repository contains the npm package @citation-js/core and several other components. |
This repository contains the npm package citation-js that wraps the aforementioned components for backwards compatibility. |
Core
Cite
: reference managerplugins
: plugins managerutil
: several utility functions and classesversion
Plugins
Plugin | Description |
---|---|
plugin-bibjson |
Plugin for BibJSON formats for Citation.js |
plugin-bibtex |
Plugin for BibTeX formats for Citation.js |
plugin-csl |
Plugin for CSL output for Citation.js |
plugin-doi |
Plugin for DOI input for Citation.js |
plugin-ris |
Plugin for RIS formats for Citation.js |
plugin-wikidata |
Plugin for Wikidata for Citation.js |
Plugins in other repositories
Plugin | Description |
---|---|
plugin-software-formats |
Plugin for CFF, Zenodo JSON, input from GitHub and npm URLs |
plugin-isbn |
Plugin for ISBNs (from Google Books, OpenLibrary) |
plugin-orcid |
Plugin for ORCID profiles (metadata from DOIs and ISBNs) |
plugin-pubmed |
Plugin for PubMed and PubMed Central identifiers |
plugin-quickstatements |
Plugin for output to Wikidata QuickStatements |
plugin-zotero-translation-server |
Plugin for Zotero JSON and interfacing with a Zotero translation server |
plugin-refer |
Plugin for the refer file format |
plugin-refworks |
Plugin for the RefWorks tagged format |
CLI
CLI:
Usage: citation-js [options]
Options:
-V, --version output the version number
-i, --input <path> Input file. If all input options are omitted, it uses stdin
-t, --text <string> Input text. If all input options are omitted, it uses stdin
-u, --url <string> Deprecated in favor of -t, --text. If all input options are omitted, it uses stdin
-o, --output <path> Output file (omit file extension). If this option is omitted, the output is written to stdout
-R, --output-non-real Output as a text file
-f, --output-type <option> Output structure type: string, html, json (default: "json")
-s, --output-style <option> Output scheme. A combination of --output-format json and --output-style citation-* is considered invalid. Options: csl (Citation Style Lanugage JSON), bibtex, citation-* (where * is any formatting style) (default: "csl")
-l, --output-language <option> Output language. [RFC 5646](https://tools.ietf.org/html/rfc5646) codes (default: "en-US")
-h, --help output usage information
Acknowledgements
- Thanks to the JS.ORG DNS service for the site url!
- Thanks to BrowserStack for the free Open Source plan, allowing me to automate testing browser support, and avoid issues like this one!