Daiquiri is a Django framework and Python package for building scientific data-publication web applications. It provides database query interfaces and APIs, metadata management, file downloads, asynchronous jobs, and standards-based endpoints such as TAP, Cone Search, and OAI-PMH.
The simplest way to try Daiquiri is through dq-dev.
You need Git, Docker Engine, Docker Compose v2, and Python 3.11 or newer.
Clone the default application and the container workflow. You do not need to clone the Daiquiri source repository for this setup:
git clone https://github.com/django-daiquiri/app.git
git clone https://github.com/django-daiquiri/dq-dev.git
cd dq-dev
python3 -m venv .venv
source .venv/bin/activate
python -m pip install .
python manage.py -c quickstart
python manage.py -s quickstartEdit usr/profiles/quickstart/conf.toml and set the absolute path to the
default application. Comment out both dq_source entries so that dq-dev
installs the released django-daiquiri package from PyPI:
[folders_on_host]
dq_app = "/absolute/path/to/app"
# dq_source = "/path/to/daiquiri"
[docker_volume_mountpoints]
dq_app = "/home/dq/app"
# dq_source = "/home/dq/source"Keep the default development settings:
[env.daiquiri]
debug = true
enable_gunicorn = falseStart the profile:
python manage.py -rOpen http://localhost:9280 in a browser. The default profile starts the
Daiquiri application and PostgreSQL containers. You can login using the
username and password admin. Asynchronous workers are
disabled by default.
If you are developing Daiquiri itself, also clone the source repository:
git clone https://github.com/django-daiquiri/daiquiri.gitSet dq_source in the host-side folder configuration to the absolute path of
that checkout. Keep the container mount point unchanged:
[folders_on_host]
dq_app = "/absolute/path/to/app"
dq_source = "/absolute/path/to/daiquiri"
[docker_volume_mountpoints]
dq_source = "/home/dq/source"Run the same dq-dev profile and edit the Daiquiri source on the host. With
debug = true and enable_gunicorn = false, the development server reloads
Python changes and they can be viewed at http://localhost:9280.
See CONTRIBUTING.rst for the development and pull-request
workflow.
For issues and feature requests, use the GitHub issue tracker.
Daiquiri is released under the Apache License 2.0.