
Citation.js
Citation.js is a free, MIT-licensed tool for converting reference data and formatting citations.
What Citation.js is
Citation.js is a free, MIT-licensed tool for converting reference data and formatting citations. It can convert formats such as BibTeX, BibJSON, DOI, and Wikidata into CSL-JSON, then apply styles including APA and Vancouver. Other listed inputs include ISBN, PubMed and PMC identifiers, Wikidata QIDs, GitHub repository URLs, and npm package URLs. Supported formats include JSON, CSL-JSON, BibJSON, BibTeX, BibLaTeX, RIS, YAML, CFF, and Zenodo Deposit JSON. Identifier resolvers can retrieve metadata from sources such as DOI Content Negotiation, Google Books, OpenLibrary, NCBI's Literature Citation Explorer, and the Wikidata MediaWiki API. The project separates a core npm package from plugins for formats and identifier sources, letting users select which formats to include. Citation.js supports Node.js and browsers, offers a command-line interface, and includes preloaded styles and locales. Its documented CLI reads input from a file, text, or standard input and writes to a file or standard output.
Good
- Free and MIT licensed.
- Supports many reference formats and identifiers.
- Modular plugins let users choose formats.
- Works with Node.js, browsers, and a command-line interface.
Watch out
- The CLI reads from a file, text, or standard input.
- The CLI writes to a file or standard output.
Who it suits
Citation.js suits researchers, developers, and publishers who need to convert reference data or format citations. Its modular packages and command-line interface may suit users who want to select formats or work in scripts.
Verdict
Citation.js covers reference conversion and formatting across a broad set of listed formats and identifier sources. Its modular approach may suit users who want selected format support rather than a single fixed setup.
Plans and prices
From Citation.js's own pricing page, checked 5 Oct 2001.
| Plan | Price | What it gives you |
|---|---|---|
| Free | Free | MIT-licensed open-source software · installable from npm |
The facts
Each one read from Citation.js's own pages, with the date it was checked.
What it does
- CLI limits
- The documented CLI reads an input file, text, or standard input and writes to an output file or standard output.checked 5 Oct 2001
- External metadata sources
- Identifier resolvers include DOI Content Negotiation, Google Books, OpenLibrary, NCBI's Literature Citation Explorer, and the Wikidata MediaWiki API.checked 5 Oct 2001
- Integration example
- The site lists an HTML API wrapper, a Chrome extension for publication data entry on the Dutch NWO ISAAC platform, and a BibTeX generator as example applications.checked 5 Oct 2001
- Known users
- The site lists users including Forgejo, Gitea, Getty Quire, NASA's General Coordinates Network, the European Environment Agency, USGS, Open Science Framework, and Jupyter Book's MyST.checked 5 Oct 2001
- License
- The project states that it is MIT licensed.checked 5 Oct 2001
- Modular
- Its modular design lets users select which formats to include.checked 5 Oct 2001
- Output styles
- It includes preloaded styles and locales for formatted references.checked 5 Oct 2001
- Package structure
- The documentation describes a core npm package and separate plugins for formats and identifier sources.checked 5 Oct 2001
- Purpose
- Citation.js converts reference formats such as BibTeX, BibJSON, DOI, and Wikidata to CSL-JSON and can format references in styles such as APA and Vancouver.checked 5 Oct 2001
- Runtime
- The project supports Node.js and browsers and provides a command-line interface.checked 5 Oct 2001
- Supported formats
- Listed formats include JSON, CSL-JSON, BibJSON, BibTeX, BibLaTeX, RIS, YAML, CFF, and Zenodo Deposit JSON.checked 5 Oct 2001
- Supported identifiers
- Listed identifier inputs include DOI, ISBN, PubMed and PMC identifiers, Wikidata QIDs, GitHub repository URLs, and npm package URLs.checked 5 Oct 2001
The full review of Citation.js
Citation.js is a developer-focused toolkit for turning varied reference records into consistent citation data and formatted bibliographies. It is best suited to teams embedding citation handling in Node.js, browser, API, or command-line workflows. Choose it when format breadth and control matter more than a ready-made research workspace.
Overview
Citation.js accepts reference material such as BibTeX, BibJSON, DOI records, and Wikidata data, converts it to CSL-JSON, and renders styles including APA and Vancouver. That end-to-end path is valuable for software that must ingest citations from multiple systems and produce uniform output for users or publications.
The project is a library and command-line tool rather than a standalone bibliography manager. Developers can integrate the core npm package, add only the format and identifier plugins they need, or run the CLI in an automated process. That flexibility rewards technical ownership; readers seeking a visual editor, account-based library, or classroom workflow should consider a different category of product.
Key features
- Broad format conversion: JSON, CSL-JSON, BibJSON, BibTeX, BibLaTeX, RIS, YAML, CFF, and Zenodo Deposit JSON are supported. This helps connect heterogeneous repositories, while the modular package structure avoids forcing every project to ship every format.
- Identifier lookup: DOI, ISBN, PubMed and PMC identifiers, Wikidata QIDs, GitHub repository URLs, and npm package URLs can serve as inputs. Resolvers use DOI Content Negotiation, Google Books, OpenLibrary, NCBI's Literature Citation Explorer, and the Wikidata MediaWiki API, giving applications several routes to retrieve metadata.
- Style and locale output: Preloaded styles and locales support formatted references, including APA and Vancouver. This is useful for applications serving different publication requirements, although teams remain responsible for selecting and presenting the appropriate style.
- Developer runtimes: Node.js and browser support, an API-oriented design, and a command-line interface cover both embedded web features and automated pipelines. The CLI reads a file, text, or standard input and writes to a file or standard output, fitting shell scripts and build jobs rather than point-and-click editing.
- Integration examples: Documented applications include an HTML API wrapper, a Chrome extension for publication entry on the Dutch NWO ISAAC platform, and a BibTeX generator. Listed users such as Forgejo, Gitea, NASA's General Coordinates Network, USGS, the European Environment Agency, Open Science Framework, and Jupyter Book's MyST indicate practical use across software and research publishing contexts.
Pricing
Free — free. Citation.js is MIT-licensed open-source software installable from npm, with identifier lookup, URL import, and BibTeX export included. There are no paid tiers, seat charges, or stated usage quotas. The saving is substantial for teams able to maintain an integration, but the trade-off is engineering responsibility: setup, interface design, and ongoing operation sit with the adopter rather than a hosted vendor.
Platforms
Citation.js runs in browsers and Node.js, exposes an API, and includes a command-line interface. It is therefore a strong fit for web applications, server-side services, and Unix-style automation. It is not presented as a finished native desktop or mobile citation app.
Who it's for
Choose Citation.js if you are building software that must import identifiers and reference files, normalize them, and emit styled citations under your own control. It also suits open-source projects that value an MIT license and selective plugin inclusion. It is less appropriate for students or writers who want an immediately usable bibliography workspace without programming or deployment work.
Pros and cons
Pros
- Extensive interoperability: Many file formats and identifier types reduce custom conversion work.
- Selective architecture: Modular plugins let projects include the formats and resolvers they actually need.
- Flexible delivery: Browser, Node.js, API, and CLI options cover embedded and automated workflows.
- Open licensing: MIT licensing and a zero-cost npm installation remove subscription and seat barriers.
Cons
- Not a finished workspace: There is no presented account-based library or standalone editing environment, so teams must build the surrounding experience.
- Integration overhead: Choosing plugins, configuring resolvers, and operating the CLI requires developer involvement.
- Resolver dependence: Metadata retrieval relies on external services, making source selection and operational handling part of an implementation.
Alternatives
For a consumer-facing citation service with Android, iOS, browser extension, and web access, choose Cite This For Me; its free account is limited to Harvard style, advertising, and seven-day citation storage.
CitePlain is a freemium extension and web option for users who prefer a simpler hosted tool. BibGuru suits educators and browser users, with a free educator Plus offering. CitApp is the better fit when browser capture, Google Docs insertions, and many styles are priorities, despite weekly free caps.
Citation[Z] offers a hosted generator, converter, and bibliography builder with five styles on its free plan. CiteMe is another extension and web alternative with 60-plus styles but monthly limits on checking, storage, projects, PDF conversion, and exports. Editor World Citation Generator is appropriate for free web-only generation and export without an account. Grafiati fits users wanting online bibliography management, starting with a free bibliography capped at 20 references for seven days.
See the Citation Generator Tools list for more options.
Verdict
Citation.js is the right choice for developers who need broad reference conversion, identifier resolution, and style output inside software they control. Its MIT license and modular plugins are the main reasons to choose it. Look elsewhere if you want a polished, ready-to-use citation workspace rather than a toolkit that becomes useful through integration.
Alternatives to Citation.js
- 1

BibGuru
Free planWebExtensionmacOSWindows7.6From $4.99 a month - 2

CitePlain
Free planWebExtension7.3From $3.25 a month - 3
Citation Machine
Free planWeb7.2From $9.95 a month - 4

Cite This For Me
Free planAndroidiOSWebExtension7.2From £6.99 a month - 5

Petal
Free planWebExtension6.9From $2.55 a month - 6

Bibcitation
Free planWebExtension6.6Free plan
