Zotero Plugin Dev

The hub for Zotero plugin development. Curated documentation, tools, scaffolds, and community resources.

🚀 Getting Started

Community Documentation Essential

The comprehensive guide maintained by the community. Covers environment setup, core APIs, and Zotero architecture details.

Zotero Plugin Template Starter

A robust TypeScript-based template for Zotero plugins. Includes best practices and pre-configured settings to start coding immediately.

Official Developer Docs

The official technical reference. Contains the critical "Migration Guide" for updating plugins to Zotero 7/8.

Official Template

"Make It Red". The official minimal example. Good for understanding the most basic plugin structure without extra tooling.

🛠️ Core Libraries & Tools

Zotero Plugin Scaffold

The modern development workflow. Features plugin side-loading, hot-reloading on source change, bundling, and release management.

Zotero Plugin Toolkit

Essential API wrappers. Simplifies registering shortcuts, creating UI dialogs, and clipboard operations to speed up development.

Zotero Types

TypeScript definitions for Zotero APIs. Enables code completion, type checking, and safer development experiences.

📦 Plugin Market & Registry

Submission Guide: The Zotero Plugin Registry is currently under development. Developers are encouraged to submit their plugins to the Zotero Chinese List or Official Plugin List for now. This list will eventually be merged into the official registry.
Zotero Chinese List Active

The current active community-maintained list of Zotero plugins. Please submit your new plugins here to be discovered by users.

Official Plugin List Active

This is a list of plugins provided in an official document.

Plugin Registry WIP

The upcoming plugin registry community. It will provide a centralized repository for all community plugins.

⚙️ Workflow & Standards

ESLint Config

@zotero-plugin-dev/eslint-config.
Custom ESLint rules tailored specifically for Zotero plugin codebases.

Renovate Preset

Configuration preset for Renovate. Automates dependency updates to keep your plugin secure and up-to-date.

🔗 Source & Community

Zotero Source Code

The source code for the Zotero client on GitHub. Reading the source is the ultimate way to understand internal mechanisms.

Zotero Dev Group

The official Google Group for developers. Connect with the core team and discuss low-level API details.