An attempt to make a better port of the LibreOffice Zotero plugin to OnlyOffice Desktop Editors, providing a sidebar-based citation management experience which should compare better than the official Zotero plugin integration provided by OnlyOffice.
The existing OnlyOffice Zotero plugin has critical limitations:
- No deletion tracking: If you delete a citation from your document, refreshing or inserting a bibliography puts it back
- Requires localhost permissions in Zotero: The local mode forces you to enable Zotero's local API connector manually
- No proper sync: No way to keep bibliography in sync with actual document content
- Missing familiar icons: No familiar Zotero LibreOffice-style toolbar buttons
ZoteroPlus attempts to fix all of these.
All six LibreOffice Zotero toolbar actions are available:
- Deletion detection: Properly tracks when citations are removed from the document
- Bibliography sync: Bibliography accurately reflects only the citations present in the document
- Dual connection modes: Local Zotero desktop app (no extra setup needed) or Online via API key
- 100+ citation styles: APA, Chicago, IEEE, Harvard, Vancouver, MLA, and more
- Custom style upload: Import your own
.cslstyle files - Multi-library search: Search across personal library and group libraries
- Footnotes/Endnotes: Full support for note-based citation styles
- Theme support: Adapts to OnlyOffice light and dark themes
cd ZoteroPlus
python3 install.pycd ZoteroPlus
python3 install.py --linkpython3 install.py --path /path/to/onlyoffice/sdkjs-pluginspython3 install.py --uninstall- Copy the entire
ZoteroPlus/folder to your OnlyOffice plugins directory:- Linux (native):
~/.local/share/onlyoffice/desktopeditors/sdkjs-plugins/ - Linux (Flatpak):
~/.var/app/org.onlyoffice.desktopeditors/data/onlyoffice/desktopeditors/sdkjs-plugins/ - macOS:
~/Library/Application Support/asc.onlyoffice.ONLYOFFICE/sdkjs-plugins/ - Windows:
%APPDATA%\ONLYOFFICE\DesktopEditors\sdkjs-plugins\
- Linux (native):
- Rename the folder to
{E5A2F1C3-7B8D-4F6A-9C0E-3D2B1A4F5E6D} - Restart OnlyOffice Desktop Editor
- Open a Word document in OnlyOffice
- The ZoteroPlus panel appears in the sidebar
- Connect: Choose Local (Zotero desktop) or Online (API key) mode
- Search: Type to search your Zotero library
- Select: Check items to cite
- Insert: Click "Insert Citation" to add at cursor
- Bibliography: Click the bibliography button to generate
- Refresh: Click refresh to sync citations with document
- Requires Zotero desktop app to be running
- Connects via
http://127.0.0.1:23119/api/ - No API key needed
- Works offline
- Uses Zotero's web API
- Requires API key from zotero.org/settings/keys
- Works without Zotero desktop app
ZoteroPlus/
├── config.json # OnlyOffice plugin manifest
├── index.html # Main sidebar UI
├── install.py # Installation script
├── scripts/
│ ├── app.js # Main application logic
│ ├── zotero-connector.js # Zotero API communication
│ ├── citation-manager.js # Citation/bibliography management
│ ├── settings-manager.js # CSL styles and preferences
│ └── vendor/
│ └── citeproc_commonjs.js # CSL citation processor
├── styles/
│ └── main.css # Plugin stylesheet
├── resources/
│ ├── icons/ # LibreOffice toolbar icons
│ ├── light/dark/ # OnlyOffice panel icons
│ └── csl/ # CSL styles and locale files
└── translations/
└── en-US.json # English translations
- OnlyOffice Desktop Editors 7.3.3+
- Zotero 6+ (for local mode) or Zotero web account (for online mode)
This plugin would not be possible without referencing the LibreOffice Zotero integration and the existing OnlyOffice Zotero plugin.