Stop Losing Citations
to Human Error.

A free, open-source suite of Bluebook tools for law review editors and legal scholars. No account. No upload. No tracking. Built at NYU Law.

100% In-Browser · Your files never leave your device

Choose Your Workflow Stage

WRITING PHASE

Zotero Perma Archiver

Save it once, archived forever.

An open-source Zotero plugin that automatically generates perma.cc archive links in the background as you build your research library — before the URL ever breaks.

SUBMISSION PHASE · ARCHIVING

PermaDrop

Live

Batch-archive every URL in your manuscript.

Drag in your .docx, select the URLs you want archived, and get back a Bluebook Rule 18.2-compliant document — with perma.cc links inserted directly into footnotes. Clean copy or Track Changes redline.

SUBMISSION PHASE · AUDITING

SupraDrop

New

Find citation logic errors before your editor does.

Automatically audits supra, Id., signal parentheticals, hereinafter, and pincite patterns across all footnotes in your Word document. No installation. No uploads.

Your manuscripts never leave your computer.

PermaDrop and SupraDrop are built with 100% client-side JavaScript and WebAssembly. Your .docx files are parsed entirely in your browser's memory.

We transmit nothing to any server — except the URLs you explicitly choose to archive, which are sent directly to the perma.cc API using your own API key.

Don't believe us? Disconnect your internet after the page loads. Everything still works.

🔒
No Server Upload
Files never leave your browser
🔑
Your API Key
Direct to perma.cc, not proxied
📂
Open Source
AGPL v3 · Audit the code yourself

How it works, technically.

The Zotero Perma Archiver is a native Zotero plugin built on the Zotero JavaScript plugin API. It hooks into your library events and calls the perma.cc REST API in the background as you save items — running entirely inside your Zotero desktop app, no browser required.

PermaDrop and SupraDrop parse .docx files using JSZip to extract raw XML, then run all citation logic entirely in your browser — no frameworks, no telemetry, no dependency on external services beyond perma.cc.

Every tool is publicly available on GitHub under the AGPL v3 license. You can read exactly what runs on your machine.

citation-audit.js
// JSZip parses the .docx (a ZIP archive)
const zip = await JSZip.loadAsync(file);
const xml = await zip
  .file('word/footnotes.xml')
  .async('string');

// Parse footnote XML nodes in-browser
const parser = new DOMParser();
const doc = parser.parseFromString(
  xml, 'text/xml'
);
const footnotes = doc
  .querySelectorAll('w\\:footnote');

// No data leaves the browser
footnotes.forEach(fn => {
  validateSupraChain(fn, index);
  validateIdUsage(fn, prev);
  validateSignals(fn);
});
Kirin Chang

Built by Kirin Chang

Research Fellow, U.S.-Asia Law Institute · NYU School of Law
Affiliate Research Fellow, AI & the Future of Work · Emory Law
Member of the New York and Texas Bars

Appeared or is forthcoming in print and online journals and books with the NYU Law Review, UCLA Law Review, Georgetown Law Journal, Minnesota Law Review, University of Illinois Law Review, Wisconsin Law Review, University of Pennsylvania Journal of International Law, among others.