Metadata-Version: 2.1
Name: oarepo
Version: 12.0.26
Summary: CESNET, UCT Prague and NTK wrapper around Invenio v3.
Author-email: "UCT Prague, CESNET z.s.p.o., NTK" <miroslav.simek@cesnet.cz>
License: MIT
Project-URL: Homepage, https://github.com/oarepo/oarepo
Keywords: oarepo,invenio
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: alabaster ==0.7.16
Requires-Dist: alembic ==1.10.4
Requires-Dist: amqp ==5.2.0
Requires-Dist: aniso8601 ==9.0.1
Requires-Dist: appdirs ==1.4.4
Requires-Dist: arrow ==1.3.0
Requires-Dist: asttokens ==2.4.1
Requires-Dist: async-timeout ==4.0.3
Requires-Dist: attrs ==23.2.0
Requires-Dist: babel-edtf ==1.1.4
Requires-Dist: babel ==2.15.0
Requires-Dist: base32-lib ==1.0.2
Requires-Dist: beautifulsoup4 ==4.12.3
Requires-Dist: bibtexparser ==1.4.1
Requires-Dist: billiard ==4.2.0
Requires-Dist: bleach ==6.1.0
Requires-Dist: blinker ==1.8.2
Requires-Dist: boto3 ==1.34.149
Requires-Dist: botocore ==1.34.149
Requires-Dist: cachelib ==0.9.0
Requires-Dist: cairocffi ==1.7.1
Requires-Dist: cairosvg ==2.7.1
Requires-Dist: celery ==5.3.6
Requires-Dist: certifi ==2024.7.4
Requires-Dist: cffi ==1.16.0
Requires-Dist: charset-normalizer ==3.3.2
Requires-Dist: citeproc-py-styles ==0.1.3
Requires-Dist: citeproc-py ==0.6.0
Requires-Dist: click-default-group ==1.2.4
Requires-Dist: click-didyoumean ==0.3.1
Requires-Dist: click-plugins ==1.1.1
Requires-Dist: click-repl ==0.3.0
Requires-Dist: click ==8.1.7
Requires-Dist: commonmark ==0.9.1
Requires-Dist: commonmeta-py ==0.8.6
Requires-Dist: counter-robots ==2018.6
Requires-Dist: cryptography ==43.0.0
Requires-Dist: cssselect2 ==0.7.0
Requires-Dist: datacite ==1.1.4
Requires-Dist: dateparser ==1.2.0
Requires-Dist: dcxml ==0.1.2
Requires-Dist: decorator ==5.1.1
Requires-Dist: defusedxml ==0.7.1
Requires-Dist: deprecated ==1.2.14
Requires-Dist: dictdiffer ==0.9.0
Requires-Dist: dnspython ==2.6.1
Requires-Dist: docutils ==0.19
Requires-Dist: dojson ==1.5.0
Requires-Dist: edtf ==4.0.1
Requires-Dist: email-validator ==2.2.0
Requires-Dist: events ==0.5
Requires-Dist: exceptiongroup ==1.2.2
Requires-Dist: executing ==2.0.1
Requires-Dist: faker ==26.0.0
Requires-Dist: fastjsonschema ==2.20.0
Requires-Dist: flask-admin ==1.6.1
Requires-Dist: flask-alembic ==2.0.1
Requires-Dist: flask-babel ==4.0.0
Requires-Dist: flask-caching ==2.3.0
Requires-Dist: flask-celeryext ==0.5.0
Requires-Dist: flask-collect-invenio ==1.4.0
Requires-Dist: flask-cors ==4.0.1
Requires-Dist: flask-iiif ==0.6.3
Requires-Dist: flask-kvsession-invenio ==0.6.3
Requires-Dist: flask-limiter ==2.9.2
Requires-Dist: flask-login ==0.6.3
Requires-Dist: flask-mail ==0.9.1
Requires-Dist: flask-menu ==1.0.1
Requires-Dist: flask-oauthlib ==0.9.6
Requires-Dist: flask-principal ==0.4.0
Requires-Dist: flask-resources ==1.2.0
Requires-Dist: flask-restful ==0.3.10
Requires-Dist: flask-security-invenio ==3.3.3
Requires-Dist: flask-shell-ipython ==0.5.1
Requires-Dist: flask-sqlalchemy ==2.5.1
Requires-Dist: flask-talisman ==0.8.1
Requires-Dist: flask-webpackext ==1.0.2
Requires-Dist: flask-wtf ==1.2.1
Requires-Dist: flask ==2.2.5
Requires-Dist: fs ==2.4.16
Requires-Dist: fsspec ==2024.6.1
Requires-Dist: ftfy ==4.4.3
Requires-Dist: future ==1.0.0
Requires-Dist: geojson ==3.1.0
Requires-Dist: ghp-import ==2.1.0
Requires-Dist: github3-py ==4.0.1
Requires-Dist: greenlet ==3.0.3
Requires-Dist: html5lib ==1.1
Requires-Dist: humanize ==4.10.0
Requires-Dist: idna ==3.7
Requires-Dist: idutils ==1.2.1
Requires-Dist: imagesize ==1.4.1
Requires-Dist: importlib-metadata ==7.2.1
Requires-Dist: importlib-resources ==6.4.0
Requires-Dist: infinity ==1.5
Requires-Dist: intervals ==0.9.2
Requires-Dist: invenio-access ==2.0.0
Requires-Dist: invenio-accounts ==5.0.1
Requires-Dist: invenio-admin ==1.4.0
Requires-Dist: invenio-administration ==2.2.4
Requires-Dist: invenio-app ==1.5.0
Requires-Dist: invenio-assets ==3.0.3
Requires-Dist: invenio-banners ==3.0.2
Requires-Dist: invenio-base ==1.4.0
Requires-Dist: invenio-cache ==1.3.0
Requires-Dist: invenio-celery ==1.3.1
Requires-Dist: invenio-communities ==13.0.3
Requires-Dist: invenio-config ==1.0.4
Requires-Dist: invenio-db ==1.1.5
Requires-Dist: invenio-drafts-resources ==3.1.1
Requires-Dist: invenio-files-rest ==2.2.0
Requires-Dist: invenio-formatter ==2.0.3
Requires-Dist: invenio-github ==1.5.1
Requires-Dist: invenio-i18n ==2.1.1
Requires-Dist: invenio-indexer ==2.3.0
Requires-Dist: invenio-jsonschemas ==1.1.4
Requires-Dist: invenio-logging ==2.1.1
Requires-Dist: invenio-mail ==2.1.1
Requires-Dist: invenio-notifications ==0.6.0
Requires-Dist: invenio-oaiserver ==2.2.1
Requires-Dist: invenio-oauth2server ==2.3.1
Requires-Dist: invenio-oauthclient ==4.0.0
Requires-Dist: invenio-pages ==4.0.1
Requires-Dist: invenio-pidstore ==1.3.1
Requires-Dist: invenio-previewer ==2.2.1
Requires-Dist: invenio-queues ==1.0.1
Requires-Dist: invenio-records-files ==1.2.1
Requires-Dist: invenio-records-permissions ==0.19.2
Requires-Dist: invenio-records-resources ==5.10.0
Requires-Dist: invenio-records-rest ==2.4.1
Requires-Dist: invenio-records-ui ==1.2.0
Requires-Dist: invenio-records ==2.3.0
Requires-Dist: invenio-requests ==4.1.0
Requires-Dist: invenio-rest ==1.3.1
Requires-Dist: invenio-s3 ==1.0.6
Requires-Dist: invenio-search-ui ==2.8.7
Requires-Dist: invenio-search ==2.3.1
Requires-Dist: invenio-stats ==4.0.2
Requires-Dist: invenio-theme ==3.2.0
Requires-Dist: invenio-userprofiles ==3.0.0
Requires-Dist: invenio-users-resources ==5.2.0
Requires-Dist: invenio-vocabularies ==3.4.2
Requires-Dist: invenio-webhooks ==1.0.1
Requires-Dist: ipython ==8.26.0
Requires-Dist: isbnlib ==3.10.14
Requires-Dist: itsdangerous ==2.0.1
Requires-Dist: jedi ==0.19.1
Requires-Dist: jinja2 ==3.1.4
Requires-Dist: jmespath ==1.0.1
Requires-Dist: jsmin ==3.0.1
Requires-Dist: jsonpatch ==1.33
Requires-Dist: jsonpointer ==3.0.0
Requires-Dist: jsonref ==1.1.0
Requires-Dist: jsonresolver ==0.3.2
Requires-Dist: jsonschema-specifications ==2023.12.1
Requires-Dist: jsonschema ==4.23.0
Requires-Dist: jupyter-client ==8.6.2
Requires-Dist: jupyter-core ==5.7.2
Requires-Dist: jupyterlab-pygments ==0.3.0
Requires-Dist: kombu ==5.3.7
Requires-Dist: limits ==3.13.0
Requires-Dist: luqum ==0.13.0
Requires-Dist: lxml-html-clean ==0.1.1
Requires-Dist: lxml ==5.2.2
Requires-Dist: mako ==1.3.5
Requires-Dist: markdown ==3.6
Requires-Dist: markupsafe ==2.1.5
Requires-Dist: marshmallow-oneofschema ==3.1.1
Requires-Dist: marshmallow-utils ==0.9.1
Requires-Dist: marshmallow ==3.21.3
Requires-Dist: matplotlib-inline ==0.1.7
Requires-Dist: maxminddb-geolite2 ==2018.703
Requires-Dist: maxminddb ==2.6.2
Requires-Dist: mergedeep ==1.3.4
Requires-Dist: mistune ==3.0.2
Requires-Dist: mkdocs-get-deps ==0.2.0
Requires-Dist: mkdocs-jupyter ==0.12.0
Requires-Dist: mkdocs-material-extensions ==1.3.1
Requires-Dist: mkdocs-material ==8.5.11
Requires-Dist: mkdocs ==1.6.0
Requires-Dist: msgpack ==1.0.8
Requires-Dist: nameparser ==1.1.3
Requires-Dist: nbclient ==0.10.0
Requires-Dist: nbconvert ==7.16.4
Requires-Dist: nbformat ==5.10.4
Requires-Dist: nbstripout ==0.6.2
Requires-Dist: oauthlib ==2.1.0
Requires-Dist: opensearch-dsl ==2.1.0
Requires-Dist: opensearch-py ==2.6.0
Requires-Dist: ordered-set ==4.1.0
Requires-Dist: packaging ==24.1
Requires-Dist: pandocfilters ==1.5.1
Requires-Dist: parso ==0.8.4
Requires-Dist: passlib ==1.7.4
Requires-Dist: pathspec ==0.12.1
Requires-Dist: pexpect ==4.9.0
Requires-Dist: pillow ==10.4.0
Requires-Dist: platformdirs ==4.2.2
Requires-Dist: pluggy ==0.13.1
Requires-Dist: ply ==3.11
Requires-Dist: prompt-toolkit ==3.0.47
Requires-Dist: psycopg2-binary ==2.9.9
Requires-Dist: ptyprocess ==0.7.0
Requires-Dist: pure-eval ==0.2.3
Requires-Dist: pycountry ==22.3.5
Requires-Dist: pycparser ==2.22
Requires-Dist: pydash ==6.0.2
Requires-Dist: pygments ==2.18.0
Requires-Dist: pyjwt ==2.8.0
Requires-Dist: pymdown-extensions ==10.8.1
Requires-Dist: pymysql ==1.1.1
Requires-Dist: pynpm ==0.2.0
Requires-Dist: pyparsing ==3.1.2
Requires-Dist: python-dateutil ==2.9.0.post0
Requires-Dist: python-geoip ==1.2
Requires-Dist: python-slugify ==8.0.4
Requires-Dist: pytz ==2024.1
Requires-Dist: pywebpack ==2.0.0
Requires-Dist: pyyaml-env-tag ==0.1
Requires-Dist: pyyaml ==6.0.1
Requires-Dist: pyzmq ==26.0.3
Requires-Dist: redis ==5.0.7
Requires-Dist: referencing ==0.35.1
Requires-Dist: regex ==2024.7.24
Requires-Dist: requests-oauthlib ==1.1.0
Requires-Dist: requests ==2.32.3
Requires-Dist: rich ==12.6.0
Requires-Dist: rpds-py ==0.19.1
Requires-Dist: s3fs ==0.4.2
Requires-Dist: s3transfer ==0.10.2
Requires-Dist: sentry-sdk ==1.45.1
Requires-Dist: setuptools ==71.1.0
Requires-Dist: simplejson ==3.19.2
Requires-Dist: simplekv ==0.14.1
Requires-Dist: six ==1.16.0
Requires-Dist: snowballstemmer ==2.2.0
Requires-Dist: soupsieve ==2.5
Requires-Dist: speaklater ==1.3
Requires-Dist: sphinx-autodoc-typehints ==1.25.3
Requires-Dist: sphinx ==7.3.7
Requires-Dist: sphinxcontrib-applehelp ==1.0.8
Requires-Dist: sphinxcontrib-devhelp ==1.0.6
Requires-Dist: sphinxcontrib-htmlhelp ==2.0.6
Requires-Dist: sphinxcontrib-issuetracker ==0.11
Requires-Dist: sphinxcontrib-jsmath ==1.0.1
Requires-Dist: sphinxcontrib-qthelp ==1.0.8
Requires-Dist: sphinxcontrib-serializinghtml ==1.1.10
Requires-Dist: sqlalchemy-continuum ==1.4.1
Requires-Dist: sqlalchemy-utils ==0.38.3
Requires-Dist: sqlalchemy ==1.4.52
Requires-Dist: stack-data ==0.6.3
Requires-Dist: text-unidecode ==1.3
Requires-Dist: tinycss2 ==1.3.0
Requires-Dist: tomli ==2.0.1
Requires-Dist: tornado ==6.4.1
Requires-Dist: tqdm ==4.66.4
Requires-Dist: traitlets ==5.14.3
Requires-Dist: types-beautifulsoup4 ==4.12.0.20240511
Requires-Dist: types-bleach ==6.1.0.20240331
Requires-Dist: types-dateparser ==1.2.0.20240420
Requires-Dist: types-html5lib ==1.1.11.20240228
Requires-Dist: types-python-dateutil ==2.9.0.20240316
Requires-Dist: types-pyyaml ==6.0.12.20240724
Requires-Dist: types-requests ==2.31.0.6
Requires-Dist: types-urllib3 ==1.26.25.14
Requires-Dist: types-xmltodict ==0.13.0.3
Requires-Dist: typing-extensions ==4.12.2
Requires-Dist: tzdata ==2024.1
Requires-Dist: tzlocal ==5.2
Requires-Dist: ua-parser ==0.18.0
Requires-Dist: uritemplate ==4.1.1
Requires-Dist: uritools ==4.0.3
Requires-Dist: urllib3 ==2.2.2
Requires-Dist: validators ==0.33.0
Requires-Dist: vine ==5.1.0
Requires-Dist: wand ==0.6.13
Requires-Dist: watchdog ==2.2.1
Requires-Dist: wcwidth ==0.2.13
Requires-Dist: webargs ==5.5.3
Requires-Dist: webencodings ==0.5.1
Requires-Dist: werkzeug ==2.2.3
Requires-Dist: wrapt ==1.16.0
Requires-Dist: wtforms-alchemy ==0.18.0
Requires-Dist: wtforms-components ==0.10.5
Requires-Dist: wtforms ==2.3.3
Requires-Dist: xmltodict ==0.12.0
Requires-Dist: zipp ==3.19.2
Requires-Dist: zipstream-ng ==1.7.1
Provides-Extra: dev
Requires-Dist: black ==24.4.2 ; extra == 'dev'
Requires-Dist: build ==1.2.1 ; extra == 'dev'
Requires-Dist: check-manifest ==0.49 ; extra == 'dev'
Requires-Dist: coverage ==7.6.0 ; extra == 'dev'
Requires-Dist: docker-services-cli ==0.9.0 ; extra == 'dev'
Requires-Dist: iniconfig ==2.0.0 ; extra == 'dev'
Requires-Dist: isort ==5.13.2 ; extra == 'dev'
Requires-Dist: mypy-extensions ==1.0.0 ; extra == 'dev'
Requires-Dist: py ==1.11.0 ; extra == 'dev'
Requires-Dist: pycodestyle ==2.12.0 ; extra == 'dev'
Requires-Dist: pydocstyle ==6.3.0 ; extra == 'dev'
Requires-Dist: pyproject-hooks ==1.1.0 ; extra == 'dev'
Requires-Dist: pytest-black-ng ==0.4.1 ; extra == 'dev'
Requires-Dist: pytest-cov ==5.0.0 ; extra == 'dev'
Requires-Dist: pytest-flask ==1.3.0 ; extra == 'dev'
Requires-Dist: pytest-github-actions-annotate-failures ==0.2.0 ; extra == 'dev'
Requires-Dist: pytest-invenio ==2.2.1 ; extra == 'dev'
Requires-Dist: pytest-isort ==4.0.0 ; extra == 'dev'
Requires-Dist: pytest-pycodestyle ==2.3.1 ; extra == 'dev'
Requires-Dist: pytest-pydocstyle ==2.3.2 ; extra == 'dev'
Requires-Dist: pytest ==7.1.3 ; extra == 'dev'
Requires-Dist: selenium ==3.141.0 ; extra == 'dev'
Requires-Dist: toml ==0.10.2 ; extra == 'dev'
Provides-Extra: devs
Requires-Dist: black ==24.4.2 ; extra == 'devs'
Requires-Dist: build ==1.2.1 ; extra == 'devs'
Requires-Dist: check-manifest ==0.49 ; extra == 'devs'
Requires-Dist: coverage ==7.6.0 ; extra == 'devs'
Requires-Dist: docker-services-cli ==0.9.0 ; extra == 'devs'
Requires-Dist: iniconfig ==2.0.0 ; extra == 'devs'
Requires-Dist: isort ==5.13.2 ; extra == 'devs'
Requires-Dist: mypy-extensions ==1.0.0 ; extra == 'devs'
Requires-Dist: py ==1.11.0 ; extra == 'devs'
Requires-Dist: pycodestyle ==2.12.0 ; extra == 'devs'
Requires-Dist: pydocstyle ==6.3.0 ; extra == 'devs'
Requires-Dist: pyproject-hooks ==1.1.0 ; extra == 'devs'
Requires-Dist: pytest-black-ng ==0.4.1 ; extra == 'devs'
Requires-Dist: pytest-cov ==5.0.0 ; extra == 'devs'
Requires-Dist: pytest-flask ==1.3.0 ; extra == 'devs'
Requires-Dist: pytest-github-actions-annotate-failures ==0.2.0 ; extra == 'devs'
Requires-Dist: pytest-invenio ==2.2.1 ; extra == 'devs'
Requires-Dist: pytest-isort ==4.0.0 ; extra == 'devs'
Requires-Dist: pytest-pycodestyle ==2.3.1 ; extra == 'devs'
Requires-Dist: pytest-pydocstyle ==2.3.2 ; extra == 'devs'
Requires-Dist: pytest ==7.1.3 ; extra == 'devs'
Requires-Dist: selenium ==3.141.0 ; extra == 'devs'
Requires-Dist: toml ==0.10.2 ; extra == 'devs'
Provides-Extra: rdm
Requires-Dist: invenio-app-rdm ==12.0.0rc2 ; extra == 'rdm'
Requires-Dist: invenio-rdm-records ==10.7.1 ; extra == 'rdm'
Provides-Extra: test
Requires-Dist: black ==24.4.2 ; extra == 'test'
Requires-Dist: build ==1.2.1 ; extra == 'test'
Requires-Dist: check-manifest ==0.49 ; extra == 'test'
Requires-Dist: coverage ==7.6.0 ; extra == 'test'
Requires-Dist: docker-services-cli ==0.9.0 ; extra == 'test'
Requires-Dist: iniconfig ==2.0.0 ; extra == 'test'
Requires-Dist: isort ==5.13.2 ; extra == 'test'
Requires-Dist: mypy-extensions ==1.0.0 ; extra == 'test'
Requires-Dist: py ==1.11.0 ; extra == 'test'
Requires-Dist: pycodestyle ==2.12.0 ; extra == 'test'
Requires-Dist: pydocstyle ==6.3.0 ; extra == 'test'
Requires-Dist: pyproject-hooks ==1.1.0 ; extra == 'test'
Requires-Dist: pytest-black-ng ==0.4.1 ; extra == 'test'
Requires-Dist: pytest-cov ==5.0.0 ; extra == 'test'
Requires-Dist: pytest-flask ==1.3.0 ; extra == 'test'
Requires-Dist: pytest-github-actions-annotate-failures ==0.2.0 ; extra == 'test'
Requires-Dist: pytest-invenio ==2.2.1 ; extra == 'test'
Requires-Dist: pytest-isort ==4.0.0 ; extra == 'test'
Requires-Dist: pytest-pycodestyle ==2.3.1 ; extra == 'test'
Requires-Dist: pytest-pydocstyle ==2.3.2 ; extra == 'test'
Requires-Dist: pytest ==7.1.3 ; extra == 'test'
Requires-Dist: selenium ==3.141.0 ; extra == 'test'
Requires-Dist: toml ==0.10.2 ; extra == 'test'
Provides-Extra: tests
Requires-Dist: black ==24.4.2 ; extra == 'tests'
Requires-Dist: build ==1.2.1 ; extra == 'tests'
Requires-Dist: check-manifest ==0.49 ; extra == 'tests'
Requires-Dist: coverage ==7.6.0 ; extra == 'tests'
Requires-Dist: docker-services-cli ==0.9.0 ; extra == 'tests'
Requires-Dist: iniconfig ==2.0.0 ; extra == 'tests'
Requires-Dist: isort ==5.13.2 ; extra == 'tests'
Requires-Dist: mypy-extensions ==1.0.0 ; extra == 'tests'
Requires-Dist: py ==1.11.0 ; extra == 'tests'
Requires-Dist: pycodestyle ==2.12.0 ; extra == 'tests'
Requires-Dist: pydocstyle ==6.3.0 ; extra == 'tests'
Requires-Dist: pyproject-hooks ==1.1.0 ; extra == 'tests'
Requires-Dist: pytest-black-ng ==0.4.1 ; extra == 'tests'
Requires-Dist: pytest-cov ==5.0.0 ; extra == 'tests'
Requires-Dist: pytest-flask ==1.3.0 ; extra == 'tests'
Requires-Dist: pytest-github-actions-annotate-failures ==0.2.0 ; extra == 'tests'
Requires-Dist: pytest-invenio ==2.2.1 ; extra == 'tests'
Requires-Dist: pytest-isort ==4.0.0 ; extra == 'tests'
Requires-Dist: pytest-pycodestyle ==2.3.1 ; extra == 'tests'
Requires-Dist: pytest-pydocstyle ==2.3.2 ; extra == 'tests'
Requires-Dist: pytest ==7.1.3 ; extra == 'tests'
Requires-Dist: selenium ==3.141.0 ; extra == 'tests'
Requires-Dist: toml ==0.10.2 ; extra == 'tests'

[![](https://img.shields.io/github/license/oarepo/oarepo.svg)](https://github.com/oarepo/oarepo/blob/master/LICENSE)
[![](https://img.shields.io/travis/oarepo/oarepo.svg)](https://travis-ci.org/oarepo/oarepo)
[![](https://img.shields.io/coveralls/oarepo/oarepo.svg)](https://coveralls.io/r/oarepo/oarepo)
[![](https://img.shields.io/pypi/v/oarepo.svg)](https://pypi.org/pypi/oarepo)

CESNET, UCT Prague and NTK wrapper around invenio v3
====================================================

This meta-package contains a curated and tested set of dependencies on Invenio and OArepo libraries.
It should be considered as a base building block for creating any OA repository applications.

The package contains the following dependency bundles:



| Bundle name | Description  |
|-------------|--------------|
| deploy      | All the dependencies needed for a basic repository deployment                            |
| deploy-es7  | All the ElasticSearch 7 compatible dependencies needed for a basic repository deployment |
| openid      | Dependencies needed for openid authentication                                            |
| multisum    | Support for multiple file checksums (deprecated)                                         |
| files       | Support for uploading files                                                              |
| acls        | ACLs support                                                                             |
| links       | Enable linking to another records                                                        |
| models      | Includes all the common data models (DCObject, multilingual fields, Invenio model,...)   |
| includes    | Adds support to compose ES mappings by including another mappings                        |
| taxonomies  | Adds support for taxonomic trees                                                         |
| tests       | Includes test dependencies                                                               |
| draft       | Adds support for draft records                                                           |
| iiif        | Adds support for file (image) preview generation                                         |
| micro-api   | A WSGI app to serve API-only apps under the `/api` prefix                                |

They could be installed, depending on needs of each repository application, by running:

```
pip install oarepo[bundle-name]
```
