This is an old revision of the document!


We’re in the process of updating the documentation for Zotero 5.0. Some documentation may be outdated in the meantime. Thanks for your understanding.

Zotero Client Coding

Changes Affecting Third-Party Developers

Plugin Development

Plugins can be divided in two groups: XUL plugins, which closely integrate with the Zotero client and external plugins, which are more likely to rely on the Web API to access Zotero libraries. XUL plugins are built on the same technologies as legacy (pre-WebExtension) Firefox extensions.

Existing plugins can be very helpful in helping you develop your own plugins. If you plan to write a XUL plugin, you can start by taking a look at the Hello World Zotero plugin.

    • Whereas the Web API allows access to online Zotero libraries, the JavaScript API allows you to connect to the local Zotero client.
    • The Zotero client stores most of its data in a SQLite database. Here you will find some details on accessing this database.
  • Word Processor Integration API
    • The Google Docs plugin implements the HTTP citing protocol, by performing a sequence of HTTP requests in a transaction. This is the preferred way to provide citing integration with Zotero for document processors.
    • The LibreOffice plugin implements the word processor integration API by acting as a server for a simple TCP/IP protocol. If out-of-process communication mechanisms such as COM and AppleScript as well as HTTP messaging protocol is not available, the TCP/IP protocol can be used instead.
dev/client_coding.1560987192.txt.gz · Last modified: 2019/06/19 19:33 by bwiernik