Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

doi-utils

Package Overview
Dependencies
Maintainers
2
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

doi-utils

Set of utility functions to help with handling DOI(Digital Object Identifier)

  • 2.0.3
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
2.1K
increased by71.43%
Maintainers
2
Weekly downloads
 
Created
Source

doi-utils

doi-utils on npm MIT License CI

A small utility for validating, normalizing, and extracting DOIs from text strings. This repository follows the advice of CrossRef for regular expression patterns.

For the 74.9M DOIs we have seen this matches 74.4M of them. If you need to use only one pattern then use this one.

The utility also recognizes URLs that are likely DOIs, and has specific handling for some repositories (e.g. eLife, Zenodo).

Install

npm install doi-utils

Overview & Usage

import { doi } from 'doi-utils';

const isValid = doi.validate('http://doi.org/10.1016/j.cageo.2015.09.015');

doi.buildUrl('http://dx.doi.org/10.1016/j.cageo.2015.09.015');
doi.buildUrl('http://www.doi.org/10.1016/j.cageo.2015.09.015');
doi.buildUrl('http://doi.org/10.1016/j.cageo.2015.09.015');
doi.buildUrl('doi:10.1016/j.cageo.2015.09.015');
// All of these produce a normalized, secure DOI url:
// https://doi.org/10.1016/j.cageo.2015.09.015

Included Utilities

  • validate - Validates if a single DOI string is valid, is tolerant of leading link or doi: strings.
  • validatePart - Validate the "10.1016/j.cageo.2015.09.015" part of a DOI.
  • normalize - Normalizes a DOI url or string into a DOI of the form 10.1000/xyz000
  • buildUrl - Builds a URL to https://doi.org, includes normalization
  • isOpenFunderRegistry - Returns true if the DOI is in the Open Funder Registry

Options

  • strict: only accept doi.org URLs and doi: prefixes

As of v2.0.0 this package is ESM only.


Made with love by Curvenote

Keywords

FAQs

Package last updated on 09 May 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc