Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/citation-js/citation-js

Core functionality of Citation.js, as well as the original plugins (CSL, BibTeX, RIS, DOI, Wikidata, and BibJSON)
https://github.com/citation-js/citation-js

hacktoberfest

Last synced: 3 months ago
JSON representation

Core functionality of Citation.js, as well as the original plugins (CSL, BibTeX, RIS, DOI, Wikidata, and BibJSON)

Awesome Lists containing this project

README

        

Citation.js

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*](https://peerj.com/articles/cs-214/?td=bl).
![DOI 10.7717/peerj-cs.214](https://img.shields.io/badge/DOI-10.7717%2Fpeerj--cs.214-blue)

---

SiteRepoGetting StartedDocumentationDemo

---

[![NPM version](https://img.shields.io/npm/v/@citation-js/core.svg)](https://npmjs.org/package/@citation-js/core)
[![NPM yearly downloads](https://img.shields.io/npm/dy/@citation-js/core.svg)](https://npmcharts.com/compare/@citation-js%2Fcore?minimal=true)
[![jsDelivr yearly hits](https://img.shields.io/jsdelivr/npm/hy/citation-js)](https://www.jsdelivr.com/package/npm/citation-js?tab=stats)
[![Build Status](https://img.shields.io/github/actions/workflow/status/citation-js/citation-js/build.yml?branch=main)](https://github.com/citation-js/citation-js/actions?query=workflow%3Abuild)
![License](https://img.shields.io/npm/l/@citation-js/core.svg)
[![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)
[![Join the chat at https://gitter.im/citation-js/Lobby](https://badges.gitter.im/citation-js/Lobby.svg)](https://gitter.im/citation-js/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![DOI](https://zenodo.org/badge/doi/10.5281/zenodo.1005176.svg)](https://doi.org/10.5281/zenodo.1005176)

# Packages

| [citation-js/citation-js](https://github.com/citation-js/citation-js) | replaces | [larsgw/citation.js](https://github.com/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

[Core functionality](https://github.com/citation-js/citation-js/tree/main/packages/core):

* `Cite`: reference manager
* `plugins`: plugins manager
* `util`: several utility functions and classes
* `version`

## Plugins

| Plugin | Description |
|---|---|
| [`plugin-bibjson`](https://github.com/citation-js/citation-js/tree/main/packages/plugin-bibjson) | Plugin for BibJSON formats for Citation.js |
| [`plugin-bibtex`](https://github.com/citation-js/citation-js/tree/main/packages/plugin-bibtex) | Plugin for BibTeX formats for Citation.js |
| [`plugin-csl`](https://github.com/citation-js/citation-js/tree/main/packages/plugin-csl) | Plugin for CSL output for Citation.js |
| [`plugin-doi`](https://github.com/citation-js/citation-js/tree/main/packages/plugin-doi) | Plugin for DOI input for Citation.js |
| [`plugin-ris`](https://github.com/citation-js/citation-js/tree/main/packages/plugin-ris) | Plugin for RIS formats for Citation.js |
| [`plugin-wikidata`](https://github.com/citation-js/citation-js/tree/main/packages/plugin-wikidata) | Plugin for Wikidata for Citation.js |

### Plugins in other repositories

| Plugin | Description |
|---|---|
| [`plugin-software-formats`](https://github.com/citation-js/plugin-software-formats) | Plugin for CFF, Zenodo JSON, input from GitHub and npm URLs |
| [`plugin-isbn`](https://github.com/citation-js/plugin-isbn) | Plugin for ISBNs (from Google Books, OpenLibrary) |
| [`plugin-orcid`](https://github.com/citation-js/plugin-orcid) | Plugin for ORCID profiles (metadata from DOIs and ISBNs) |
| [`plugin-pubmed`](https://github.com/citation-js/plugin-pubmed) | Plugin for PubMed and PubMed Central identifiers |
| [`plugin-quickstatements`](https://github.com/citation-js/plugin-quickstatements) | Plugin for output to Wikidata QuickStatements |
| [`plugin-zotero-translation-server`](https://github.com/citation-js/plugin-zotero-translation-server) | Plugin for Zotero JSON and interfacing with a Zotero translation server |
| [`plugin-refer`](https://github.com/citation-js/plugin-refer) | Plugin for the refer file format |
| [`plugin-refworks`](https://github.com/citation-js/plugin-refworks) | Plugin for the RefWorks tagged format |

## CLI

[CLI](https://github.com/citation-js/citation-js/tree/main/packages/cli):

Usage: citation-js [options]

Options:
-V, --version output the version number
-i, --input Input file. If all input options are omitted, it uses stdin
-t, --text Input text. If all input options are omitted, it uses stdin
-u, --url Deprecated in favor of -t, --text. If all input options are omitted, it uses stdin
-o, --output 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 Output structure type: string, html, json (default: "json")
-s, --output-style 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 Output language. [RFC 5646](https://tools.ietf.org/html/rfc5646) codes (default: "en-US")
-h, --help output usage information

# Acknowledgements

[![JS.ORG](https://logo.js.org/dark_tiny.png)](https://js.org)

* Thanks to the JS.ORG [DNS service](https://dns.js.org) for the site url!

[BrowserStack](https://browserstack.com)

* Thanks to [BrowserStack](https://browserstack.com) for the free Open Source plan, allowing me to automate testing browser support, and avoid issues like [this one](https://github.com/larsgw/citation.js/issues/87)!