I recently received a request to outline my process for managing bibliographies. Here's a breakdown of my approach.

I use the Zotero application as a reference manager. The Zotero Firefox connector1 lets me add papers from URLs. Zotero is quite smart about grabbing the metadata from the URL or PDF itself.

The view I have from Zotero is:

While Zotero is great for storing local copies of papers and generating bibliographies, I don't find it to be optimal for organisation and note-taking. Instead, I use the Zotero Better Bibtex plugin to export all the items in my library2 into a Bib file that I reference items in with another application.

I'm using Obsidian as a front-end into my Git repository of notes as plaintext markdown files. I have Zotero exporting its bibliography into this directory as references.bib, tracked with version control, which I then interface with using the Obsidian Citations plugin. This allows searching the bibliography in Obsidian, referencing items in the bibliography in Obsidian notes, and creating notes for bibliography items in Obsidian. I find this to be much more flexible than Zotero's in-built note-taking functionality: notes can be version controlled, can link to each other, and can other notes can reference bibliography items.

To organise references for a project, a note associated with the said project can reference all relevant papers. And speaking of organisation, the plugin Obsidian Kaban provides a convenient way to maintain a reading list.

The graph view from Obsidian, with bibliography items notes in red, is:

This approach is quite modular. Zotero could be replaced with another reference manager that can generate a Bib file, or be omitted entirely and the file manually maintained. Obsidian could also be replaced with another note-taking application that can interface with a Bib file, or indeed one that doesn't if the user doesn't mind manually maintaining reference keys.

However, with slightly tighter integration we can get some benefits. Using the following Obsidian Citation plugin template:

title: {{title}}
authors: {{authorString}}
year: {{year}}
citekey: {{citekey}}
DOI: {{DOI}}
zoteroSelectURI: [{{zoteroSelectURI}}]({{zoteroSelectURI}})
URL: {{URL}}


We have not only a link to the URL (if it exists), but a clickable link to the local Zotero entry and the associated PDF with zoteroSelectURI.

There are still a few outstanding issues with this approach, though:

Please get in touch if you have any suggestions for improvement.

  1. Plugins are available for other browsers.↩︎

  2. One could also export a subset of a Zotero library with a 'collection' (folder).↩︎

  3. Which is possible to self-host.↩︎