···30303131# Installation
32323333-* Using [pip][10]: `pip install pyzotero` (it's available as a wheel, and is tested on Python 3.7 and up)
3434-* Using Anaconda:`conda config --add channels conda-forge && conda install pyzotero`
3333+* Using [uv][11]: `uv add pyzotero`
3434+* Using [pip][10]: `pip install pyzotero`
3535+* Using Anaconda:`conda install conda-forge::pyzotero`
3536* From a local clone, if you wish to install Pyzotero from a specific branch:
36373738Example:
···4041git clone git://github.com/urschrei/pyzotero.git
4142cd pyzotero
4243git checkout main
4343-pip install .
4444+# specify --dev if you're planning on running tests
4545+uv sync
4446```
45474648## Testing
47494848-Run `pytest .` from the top-level directory.
5050+Run `pytest .` from the top-level directory. This requires the `dev` dependency group to be installed: `uv sync --dev` / `pip install --group dev`
49515052## Issues
5153···53555456## Pull Requests
55575656-Pull requests are welcomed. Please read the [contribution guidelines](CONTRIBUTING.md). In particular, please **base your PR on the `dev` branch**.
5858+Pull requests are welcomed. Please read the [contribution guidelines](CONTRIBUTING.md). In particular, please **base your PR on the `main` branch**.
57595860## Versioning
59616062As of v1.0.0, Pyzotero is versioned according to [Semver](http://semver.org); version increments are performed as follows:
6161-6263636464651. MAJOR version will increment with incompatible API changes,
···8485[8]: https://opensource.org/license/blue-oak-model-license
8586[9]: https://github.com/urschrei/pyzotero/tree/main
8687[10]: http://www.pip-installer.org/en/latest/index.html
8888+[11]: https://docs.astral.sh/uv
8789† This isn't strictly true: you only need an API key for personal libraries and non-public group libraries.
8890