npm.io
0.8.2 • Published 2 months ago

@citation-js/plugin-doi

Licence
MIT
Version
0.8.2
Deps
1
Size
13 kB
Vulns
0
Weekly
0
Stars
208

@citation-js/plugin-doi

Plugin for DOI input for Citation.js.

NPM version NPM total downloads License Dependency status

Install

npm install @citation-js/plugin-doi

Usage

Register by importing the package:

require('@citation-js/plugin-doi')
'Polite' API access

The plugin fetches data from DOIs using DOI Content Negotiation, which means the Crossref, DataCite, and mEDRA APIs are indirectly used.

Crossref strongly encourages adding a mailto: link to the User-Agent header or URL parameters to get higher rate limits. Because the Crossref API is only used indirectly, the URL parameter method cannot be used consistently. Additionally, the User-Agent header cannot be set in the browser. For non-browser usage however, the user agent can be set like this:

const { util, version } = require('@citation-js/core')

util.setUserAgent(`Example Foo (mailto:foo@example.org) Citation.js/${version} Node.js/${process.versions.node}`)

Formats

Formats and other features added by this plugin.

Input

Supports DOIs inputted in the following ways:

  • @doi/api: a doi.org URL
  • @doi/id: a single DOI
  • @doi/list+text: whitespace-separated list of DOIs
  • @doi/list+object: array of DOIs

Additionally, the following internal type is exposed:

  • @doi/type: fix the type value in certain API responses

Keywords