.. _dependencies:
Dependencies
============
Mandatory requirements are required to run urlwatch. Depending on what
optional features you want to use, you might also need to install
additional packages -- however, those are not needed to run urlwatch.
Mandatory Packages
------------------
- Python 3.8 or newer
- `PyYAML `__
- `minidb `__
- `requests `__
- `keyring `__
- `platformdirs `__
- `lxml `__
- `cssselect `__
The dependencies can be installed with (add ``--user`` to install to ``$HOME``):
::
python3 -m pip install pyyaml minidb requests keyring appdirs lxml cssselect
Optional Packages
-----------------
Optional packages can be installed using::
python3 -m pip install
Where ```` is one of the following:
+-------------------------+---------------------------------------------------------------------+
| Feature | Python package(s) to install |
+=========================+=====================================================================+
| Pushover reporter | `chump `__ |
+-------------------------+---------------------------------------------------------------------+
| Pushbullet reporter | `pushbullet.py `__ |
+-------------------------+---------------------------------------------------------------------+
| Matrix reporter | `matrix_client `__ |
| | and `markdown2 `__ |
+-------------------------+---------------------------------------------------------------------+
| `stdout` reporter with | `colorama `__ |
| color on Windows | |
+-------------------------+---------------------------------------------------------------------+
| `browser` job kind | `playwright `__ |
| | (since version 2.28) |
+-------------------------+---------------------------------------------------------------------+
| Unit testing | `pycodestyle `__, |
| | `docutils `__, |
+-------------------------+---------------------------------------------------------------------+
| Documentation build | `Sphinx `__ |
+-------------------------+---------------------------------------------------------------------+
| `beautify` filter | `beautifulsoup4 `__; |
| | optional dependencies (for ``