Zotero integrations

Maybe a [[@citekey]] click could be recognized as an external link to Zotero. If you click on the link it opens the reference in Zotero, but also will map all citations linked this way in the graph. Ideally with a toggle to graph or not graph citekeys.

This would eliminate the need to create an essentially empty reference note from the citekey to see graphing and backlinks.

There could also be a section of the right pane for references (like tags) where you could sort by the most cited citekeys and see what link to them.

I’d really like that implementation, if possible.


In Zettlr plugin is possible to open cited reference in external pdf viewer if pdf existed in the Zotero library by right-click mouse on the reference > open attachement

1 Like

I agree, sort of. This depends on your workflow in the end, my notes about the reference [[citekey]] are not empty and have my own thoughts there. I also transclude the metadata and like having links to explore connections that might not be obvious in Zotero itself.

You can already add links to your zotero items with standard markdown formatting [citekey](zotero://url/link/here).

Here’s another user scenario

O has a collection of scientific papers gathered over the last 30 years scattered across her hard drive(s). Many are PDFs but some are not. Some are no longer accessible on-line. O is doing research in some new areas and typically finds research papers that need a reference in Zotero. Then from Zotero O wants to create a base note in Obsidian that contains the the basic bibliographic citation and is linked back to the PDF lcoation. While reading and reviewing the PDFs on an iPad O takes notes and makes annotations. At the end O wants all of those to be exported to markdown files and then easily imported into Obsidian as notes with automatic or easy to put in links back to the base bibliographic note. There are 2 kinds of these. Highlighted quotes and O’s own notes. They need to be separate but all linked to the base note. Every separate highlight should be a separate item in Obsidian and every separate note should also be a separate item in Obsidian.

Sometimes O wants to see the code in the editor and sometimes O wants it to be hidden so a preference or simple hotkey toggle would be great.

Key issues are that there is a backlog of papers to enter into Zotero and then O would like a way to select a group of them and have the automatic base note created in Obsidian with the general citation and a link back to the file that is the source document in Zotero. If thy have been annotated then the anotatiosn will be pulled out as above. If one is annotated later there needs to be some way to say review all of these items for new or additional annotations and create Obsidian items for each new one.

arg’s plugin looks like it would work but of course I need it to run on the Mac and I’m strill trying to figure out if I can install it at all.

1 Like

Developer of Zettlr use similar pipeline to extract notes from pdf’s https://forum.zettlr.com/discussion/94/zotero-as-zettelkasten

@OogieM The nice thing with Zotero and its plugins is that they are compatible in different operating systems, so there shouldn’t be any problems installing.

I’m not sure if it’s a core feature of Zotero or if Zotfile handles it, but dragging any PDFs to Zotero should extract its metadata (although 30 year old PDFs might not have it). You only really need the PDFs if you want to annotate them, so you could also just create regular Zotero items if that is enough for you.

I sometimes use my iPad to make handwritten annotations (It takes a little bit of effort to set up, but Zotfile manages this through your cloud of choice. See the section Sync PDFs with your iPad or Android tablet in Zotfile’s documentation. The only disadvantage there is that you won’t be able to extract handwritten annotations with Zotfile once at your computer, so I’d recommend annotating with a keyboard if you want to export them.

You can do this with the mdnotes plugin. See Zotero best practices - #57 by argentum for a small overview of what is possible. I haven’t tested with massive exports, but it should work for multiple items at a time if you select them with Ctrl+click.

At the moment the plugin doesn’t do it at the 1-highlight-1-file level, but you can do it at a coarser scale through colours (I also covered that a little bit here: Zotero best practices - #57 by argentum). If there are more people interested in having one highlight/annotation per file I could look into it, but off the top of my head the problem with that would be the naming of those files (unless we go Zettelkasten and use some unique ID for each).

Feel free to reach out if you run into any problems!

1 Like

This would be great. Totally see its application. +1 for this.

I just got Zotfile installed and set up. It’s a bit more cumbersome if you do not want to use a standard cloud service but it is possible. As a test I brought in one of my oldest scientific papers. The 1922 paper by Wright on calculating inbreeding coefficients and it DID actually get the metadata in correctly! I was amazed and pleased. Sicne that is I think the oldest one I have I’m a lot more encouraged that others will also work.

I’ll play with the colors option, thanks for the idea.

Yes, I was thinking of the date-time prefix on the notes to make them unique names. I would love that as an option that can be changed easily or perhaps a different way of selecting/saving them. I can see cases where all highlights and notes into one Obsidian not are fine and cases where I want them split up.

Here’s an example, I’ve got a paper on a genome wide analysis of sheep breeds using SNPs. I want connections to a note that describes the specific SNP chip used because there are different ones, also links to notes on what the base source of the DNA was (cheek swabs, blood, ear tissue, hair follicles, etc.) It’s useful to know whether a particular paper and research used a particular system for getting the DNA. So I sometimes want to find all the articles that used a particular method or a particular chip. Then there are my interpretations of the information, for example the reference genomes they used did not include several highly inbred breeds so how applicable will the results be when the populations I am interested in are all highly inbred. Out of this one paper I’m going to have multiple notes in several major areas that are all distinct. Lumping them all in one note isn’t going to work so I have to separate them out somehow, either manually later or at collection.

OTOH the inbreeding paper mentioned above is simple. All I really need is link it to a single note that describes the various methods of calculating inbreeding coefficients. Wrights is the standard but there are some other ways to do it. I have few notes from that Wrights paper, just a quick link to the equations. Similarly the papers I have on BLUP analysis are likely only going to need a single note per paper. It all depends on the paper and subject. For my weaving/fiber research nearly all scientific papers crosslink a lot, from weave structure, to fibers, to age, to dyes used etc.

I’ve got to play a lot more with my sample set of doucments to get my structure and workflow down before I start fully implementing the system over my huge collection of stuff.

I see! Just an idea, you can use pop-up notes for that and format them with wiki links. The links to those relevant aspects of your reference can be independent of Zotero.

For example, in paper A you can add an annotation that mentions This paper uses [[method A]] and checks for [[population X]]. When you export those notes, your annotations will have links to method A and population X which you can write about in Obsidian without having to have a specific note for them in Zotero.

OK That seems like it will work. I don’t want notes in Zotero necessarily to stay there. I see Zotero as the bibliographic and file repository and a way to get them to and from my tablet via Zotfile to collect the annotations. Just that each time you go back and re-read or add more annotations Zotfile doesn’t overwrite the original annotated version just creates a new one. So you end up with all sorts of copies that you have to manage separately and manually.

Maybe a [@citekey] could be recognized as [[@citekey]] so pandoc can still process the file.

I don’t use Zotero, but just a plain .bib file for my references. Since there is no plugin for obsidian (yet) to enter citekeys effortlessly, I hacked together my own solution using dropdown terminal windows and fuzzy search. This might be interesting for some of you (works on macOS and probably on Linux, requires certain familiarity with terminal applications though):


I wanted to suggest a Bibtex support plugin idea like Zettlr does here in the forum, but this seems to be the most bumped already.

I don’t think a Zotero integration is what’s really necessary, but just the ability to use Bibtex.


hey guys, just curious on what’s the potential future of this idea, like @a.u said the most important aspect of this would be to be able to use Bibtex, that way zotero can easily generate a file that obsidian can read.

Just in sense of scope, is this something that could be achieved in short-term as a community plugin? or is it something more long-term that might need core integration?

Like many others this is my most highly anticipated plugin, would be a game changer and a huge time saver



Some plugins use CSL JSON instead of bibtex https://citeproc-js.readthedocs.io/en/latest/csl-json/markup.html

I think it most likely will come as a community plugin. I’ve mentioned this in Discord before, the when part of the question is just a matter of finding a volunteer. It’s on my todo/wish list as well, but I have responsibilities and other plugins that need my attention first.
If someone in this thread is a developer and has some free time and interest on developing, I can give pointers.


got you, @argentum thanks for the info, makes sense, these things take time and energy. I don’t have the skill level for it unfortunatly, hope there’ll be someone who takes the torch do make it happen

I just wrote a python script which uses the text in the clipboard (e.g. the title of a paper) to search my Zotero library and then automatically create a literature note in my Obsidian vault. What I have included is part of the meta-information including aliases, tags, the title, the authors, the publication with links to the specific Zotero item and attachments. My very limited programing skill does not allow me to write a third-party plugin. So this the best I could do. Here is an example.
example, edit mode
example, preview mode
If anyone needs it or knows an easy way to make it a plugin, please let me know.

I’ve just released a very barebones Citation plugin which implements searching a Zotero reference database and automatic templated creation of notes based on a particular reference.

I haven’t yet implemented some of the more advanced features discussed in this thread (e.g. note export), but it’s on the mental roadmap. Please check out the plugin and let me know what you think!



I’m a Mac, Zotero and Zettlr user and I just discovered Obsidian a week ago.

Have you ever heard about Zotpick ?

It’s a script that you can save as a application on macOS.

So, whatever software I use, when I launch Zotpick the search panel of Zotero appears and the result of my search is automatically written as [@name_date].

For this kind of export, you need to install Better BibTex on Zotero.

What is missed in Obsidian :

  • post-process to export .md with Pandoc
  • integration of a citation database which can be automatically generated by Better BibTex.

And it’s true that this options are both currently available on Zettlr.


To complete.

I don’t use the CLS JSON integration in Zettler.
I prefer the search panel of Zotero. It’s more convenient when you have a large library.