cd /news/developer-tools/doi-to-bibtex-converter-doesn-t-lowe… · home topics developer-tools article
[ARTICLE · art-34747] src=dev.to ↗ pub= topic=developer-tools verified=true sentiment=· neutral

DOI to BibTeX converter - doesn't lowercase your acronyms or choke on ampersands

A developer built a client-side DOI-to-BibTeX converter that runs entirely in the browser, sending requests directly to CrossRef's API without any server intermediary. The tool preserves acronyms in titles by wrapping all-caps tokens in braces, escapes reserved LaTeX characters like ampersands, and offers two output dialects: BibLaTeX (raw UTF-8) and Legacy BibTeX (macro-based). Failed lookups display inline reasons, and users can override entry types via a dropdown.

read1 min views1 publishedJun 20, 2026

Paste a DOI (up to 50, resolved in parallel), it goes straight from your browser to CrossRef's API, comes back as bibliographic data, gets written to BibTeX. Nothing touches a server in between - exists in the browser session, gone when you close the tab.

Two output dialects: BibLaTeX keeps accents as raw UTF-8 (for biber), Legacy BibTeX rewrites them as macros like Kr{"a}mer (for old pdfLaTeX bibtex setups, since raw UTF-8 either errors or sorts wrong there). Check your preamble - \usepackage{biblatex} + \addbibresource means BibLaTeX, \bibliographystyle + \bibliography means Legacy.

The actual fixes: titles aren't brace-protected by most converters, so under bibstyles that case-fold titles, "DNA repair in RNA viruses" becomes "Dna repair in rna viruses" - this wraps all-caps tokens in braces so that can't happen. CrossRef returns bare reserved characters like & in journal names, which is an active LaTeX character and throws "Misplaced alignment tab character" on compile - auto-escaped. CrossRef also mistags entry types more than expected (tags conference papers as journal-article), so there's a per-row dropdown to override @article before you copy.

Failed lookups show inline with the reason - usually a typo, a withdrawn paper, or a record not in CrossRef's index. If it's not in CrossRef but you know the PMID or arXiv ID, the PubMed and arXiv tools exist for exactly that fallback. Worth knowing: the BibTeX this produces is a clean starting point, not pre-conformed to IEEE/Elsevier/ACM submission templates - those enforce their own field ordering on top.

── more in #developer-tools 4 stories · sorted by recency
── more on @crossref 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/doi-to-bibtex-conver…] indexed:0 read:1min 2026-06-20 ·