Note If you do not plan to make any code changes yourself, and only wish to run the latest prerelease versions of Zotero, you can just install a development XPI.
Zotero code is available under the AGPLv3 license, except where the source code specifies otherwise.
Zotero source code is hosted on GitHub.
Zotero's Git repositories often have multiple branches for different lines of development. The default branch, “master”, is the main development trunk where development is most active and where most new features are first introduced. Because of this, trunk code is often unstable: new code has received little testing, which increases the risk of data loss. Branches are usually created prior to releasing new major versions. After a branch has been created, the branch becomes an independent line of development: the code in the branch remains relatively stable and mostly receives bug fixes and small changes. When a release is made (e.g., Zotero 4.0.12), a snapshot of the relevant code is tagged with its version number. See Git documentation for more information on working with branches and tags.
In order to keep product discussions open to as many people as possible, Zotero does not use an issue tracker for bug reports or feature requests. Zotero users should use the Zotero Forums rather than GitHub to report issues and feature requests.
For confirmed bugs or agreed-upon changes, new issues will be created in the relevant repositories on GitHub by Zotero developers. Commit history can be viewed using the GitHub web interface or a Git client. Zotero developers previously used Trac as a source code browser and internal issue tracker, and very old tickets are still archived there.
To make code changes, you first need to create a local copy (a checkout) of the relevant code from the Zotero Git repository using a Git client.
After installing Git, you can use the official command-line client for checking out code, e.g.
git clone --recursive git://github.com/zotero/zotero.git zotero
checks out the Zotero client core code to a local “zotero” directory.
To use the current active branch, type git checkout 4.0.
Mac and Ubuntu users may already have Git installed. Mac users can install the latest version via HomeBrew, MacPorts, or Fink), while Ubuntu users can install the git package.
You can also use a GUI program such as GitHub's Mac or Windows client. Whichever client you use, be sure to select the 4.0 branch after checking out the repository.
Need more help? See the GitHub documentation for assistance with checking out Git repositories.
The preferred way to contribute code is to fork the relevant Git repository, commit your changes, and send a pull request.
See Client Coding for more information on coding for Zotero.
For development, it is very convenient to run the Zotero client directly from a Git checkout.
Warning: Git installations are for development and testing purposes only.
extensions subdirectory of your Firefox profile directory, create a text file named zotero@chnm.gmu.edu (without an extension) containing the path to your Git checkout (e.g. ~/Documents/Development/zotero). This tells Firefox to load the extension from this location. If Zotero for Firefox is already installed, either use a separate profile (recommended) or uninstall it and restart Firefox before creating the text file.en-US, as the other locales may not yet have the latest strings.git pull.git submodule foreach git pull origin master.After building Zotero Standalone, you can run it directly, or interact with it from a supported browser using a Zotero connector.
To run a Git build of the Google Chrome Connector, you need to:
You should now see a Zotero icon in the address bar when visiting translatable webpages (e.g this article or this book), and clicking the icon should add the item to your Zotero Standalone library.