django-daiquiri


Namedjango-daiquiri JSON
Version 0.5.1 PyPI version JSON
download
home_pagehttps://github.com/django-daiquiri/daiquiri
SummaryDaiquiri is a framework for the publication of scientific databases.
upload_time2024-08-16 12:43:13
maintainerJochen Klar
docs_urlNone
authorJochen Klar
requires_pythonNone
licenseApache-2.0
keywords
VCS
bugtrack_url
requirements astropy celery coverage Django django-allauth django-compressor django-extensions django-filter django-honeypot django-ipware django-libsass django-sendfile2 django-settings-export django-test-generator django-vendor-files django-user-agents django-widget-tweaks djangorestframework dj-database-url drf-extensions ipaddress iso8601 jsonfield lunr Markdown Pygments pytest pytest-cov pytest-django pytest-dotenv pytest-mock pytest-pythonpath queryparser-python3 rules XlsxWriter
Travis-CI No Travis.
coveralls test coverage
            # Daiquiri

**A framework for the publication of scientific databases**

[![pytest Workflow Status](https://github.com/django-daiquiri/daiquiri/actions/workflows/pytest.yml/badge.svg)](https://github.com/django-daiquiri/daiquiri/actions/workflows/pytest.yml)
[![Coverage Status](https://coveralls.io/repos/django-daiquiri/daiquiri/badge.svg?branch=master&service=github)](https://coveralls.io/github/django-daiquiri/daiquiri?branch=master)
[![License](http://img.shields.io/badge/license-APACHE-blue.svg?style=flat)](https://github.com/django-daiquiri/daiquiri/blob/master/LICENSE)
[![Latest Version](https://img.shields.io/pypi/v/django-daiquiri.svg?style=flat)](https://pypi.org/project/django-daiquiri/)

#### Homepage of the Daiquiri default app
![daiquiri-default-app](https://github.com/django-daiquiri/daiquiri/assets/45099849/586c9039-9978-4845-9f31-f002576392f6)

#### Query interface from [Gaia@AIP](https://gaia.aip.de/)
![daiquiri-gaia-query](https://github.com/django-daiquiri/daiquiri/assets/45099849/fa160b81-b253-4c5c-ad1d-34d4edf529b2)


## Introduction

Today, the publication of research data plays an important role in astronomy
and astrophysics. On the one hand, dedicated surveys like SDSS and RAVE, data
intensive instruments like LOFAR, or massive simulations like Millennium and 
MultiDark are initially planned to release their data for the community. 
On the other hand, more traditionally oriented research projects strive to 
publish their data as a key requirement demanded by the funding agencies.

The common approach is to publish this data via dedicated web sites. This
includes rather simple HTML forms as well as complex query systems such as
SDSS-CAS. Most of these web sites are tailor made for the particular case and
are therefore not easily transferable to future projects.

At Leibniz-Institute for Astrophysics Potsdam (AIP), we gained experience
with both the maintenance and the development of such applications.
It became, however, apparent that already the current plethora of applications
constitutes a major challenge for maintenance expenses and scalability.
In order to address these issues, we developed the Daiquiri framework,
which is particularly designed to allow for different highly customizable web
applications based on a common easily maintainable code base.

## Features

Daiquiri enables collaboration and institutions to create customized websites,
comprising of the following features:

* An interactive Query interface enabling users to perform SQL/ADQL queries against catalog databases. The queries are analyzed using the [queryparser](https://github.com/django-daiquiri/queryparser) and permissions are checked depending on user accounts and groups.
* Asynchronous database queries, which can take minutes or even hours.
* Download of the query results in different formats and visualization of the data.
* A programmatic interface to the database implementing the [IVOA TAP](http://www.ivoa.net/documents/TAP/20180830/PR-TAP-1.1-20180830.html) protocol.
* A cone search API based on the [IVOA Simple Cone Search](http://www.ivoa.net/documents/latest/ConeSearch.html) recommendation.
* An integration into to [IVOA registry of registry](http://rofr.ivoa.net/) to make the VO endpoints available in applications like, e.g. [topcat](http://www.star.bris.ac.uk/~mbt/topcat/).
* A metadata management backend containing information about the database schemas and tables including DOI and UCD.
* The download of files connected to the database tables, including access restrictions.
* An OAI-PMH2 endpoint to make the metadata stored in the system available to harvesters.
* A cut-out API for multi-dimensional data (e.g. data cubes).
* A sophisticated user management system with customizable registration and confirmation workflows.
* A contact form connected to the management backend.

## Requirements

Daiquiri is based on [Django](https://www.djangoproject.com/) and is written
in Python. The following requirements are mandatory:

* Python `>=3.9`
* PostgreSQL `>=14`, MySQL `>=5.6`
* RabbitMQ `>=3.5` (for asyncronous tasks like the query queue)

For demonstration, development or testing purposes, Daiquiri can be installed
on Linux, macOS, or even Windows. If you, however, intent to set up a production
enviroment, serving Daiquiri over a Network or the Internet, we strongly suggest
that you use a recent Linux distribution, namely:

* Debian 11
* Ubuntu 22.04

## Scientific Databases Using Daiquiri

Daiquiri is currently used on several sites hosted and maintained by
the [Leibniz-Institute for Astrophysics Potsdam (AIP)](http://www.aip.de/):

* [Gaia@AIP Services](https://gaia.aip.de)
* [APPLAUSE archives](https://www.plate-archive.org)
* [MUSE-Wide survey](https://musewide.aip.de)
* [GREGOR project and archive](https://gregor.aip.de)
* [CLUES – Constrained Local UniversE Simulations project](https://www.clues-project.org)
* [CosmoSim database](https://www.cosmosim.org)
* [RAVE Survey](https://www.rave-survey.org)

## Installation

You can find the detailed instractions for the installation of Daiquiri in the
main documentation.

* [Installation](https://django-daiquiri.github.io/docs/installation/)


## Documentation

**Main documenation**:  [django-daiquiri.github.io](https://django-daiquiri.github.io)


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/django-daiquiri/daiquiri",
    "name": "django-daiquiri",
    "maintainer": "Jochen Klar",
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": "mail@jochenklar.de",
    "keywords": null,
    "author": "Jochen Klar",
    "author_email": "mail@jochenklar.de",
    "download_url": "https://files.pythonhosted.org/packages/47/0a/c1169c9a1e10e3e11f3fd1c93982db70c00e64f748f78f1eff412e6b1859/django_daiquiri-0.5.1.tar.gz",
    "platform": null,
    "description": "# Daiquiri\n\n**A framework for the publication of scientific databases**\n\n[![pytest Workflow Status](https://github.com/django-daiquiri/daiquiri/actions/workflows/pytest.yml/badge.svg)](https://github.com/django-daiquiri/daiquiri/actions/workflows/pytest.yml)\n[![Coverage Status](https://coveralls.io/repos/django-daiquiri/daiquiri/badge.svg?branch=master&service=github)](https://coveralls.io/github/django-daiquiri/daiquiri?branch=master)\n[![License](http://img.shields.io/badge/license-APACHE-blue.svg?style=flat)](https://github.com/django-daiquiri/daiquiri/blob/master/LICENSE)\n[![Latest Version](https://img.shields.io/pypi/v/django-daiquiri.svg?style=flat)](https://pypi.org/project/django-daiquiri/)\n\n#### Homepage of the Daiquiri default app\n![daiquiri-default-app](https://github.com/django-daiquiri/daiquiri/assets/45099849/586c9039-9978-4845-9f31-f002576392f6)\n\n#### Query interface from [Gaia@AIP](https://gaia.aip.de/)\n![daiquiri-gaia-query](https://github.com/django-daiquiri/daiquiri/assets/45099849/fa160b81-b253-4c5c-ad1d-34d4edf529b2)\n\n\n## Introduction\n\nToday, the publication of research data plays an important role in astronomy\nand astrophysics. On the one hand, dedicated surveys like SDSS and RAVE, data\nintensive instruments like LOFAR, or massive simulations like Millennium and \nMultiDark are initially planned to release their data for the community. \nOn the other hand, more traditionally oriented research projects strive to \npublish their data as a key requirement demanded by the funding agencies.\n\nThe common approach is to publish this data via dedicated web sites. This\nincludes rather simple HTML forms as well as complex query systems such as\nSDSS-CAS. Most of these web sites are tailor made for the particular case and\nare therefore not easily transferable to future projects.\n\nAt Leibniz-Institute for Astrophysics Potsdam (AIP), we gained experience\nwith both the maintenance and the development of such applications.\nIt became, however, apparent that already the current plethora of applications\nconstitutes a major challenge for maintenance expenses and scalability.\nIn order to address these issues, we developed the Daiquiri framework,\nwhich is particularly designed to allow for different highly customizable web\napplications based on a common easily maintainable code base.\n\n## Features\n\nDaiquiri enables collaboration and institutions to create customized websites,\ncomprising of the following features:\n\n* An interactive Query interface enabling users to perform SQL/ADQL queries against catalog databases. The queries are analyzed using the [queryparser](https://github.com/django-daiquiri/queryparser) and permissions are checked depending on user accounts and groups.\n* Asynchronous database queries, which can take minutes or even hours.\n* Download of the query results in different formats and visualization of the data.\n* A programmatic interface to the database implementing the [IVOA TAP](http://www.ivoa.net/documents/TAP/20180830/PR-TAP-1.1-20180830.html) protocol.\n* A cone search API based on the [IVOA Simple Cone Search](http://www.ivoa.net/documents/latest/ConeSearch.html) recommendation.\n* An integration into to [IVOA registry of registry](http://rofr.ivoa.net/) to make the VO endpoints available in applications like, e.g. [topcat](http://www.star.bris.ac.uk/~mbt/topcat/).\n* A metadata management backend containing information about the database schemas and tables including DOI and UCD.\n* The download of files connected to the database tables, including access restrictions.\n* An OAI-PMH2 endpoint to make the metadata stored in the system available to harvesters.\n* A cut-out API for multi-dimensional data (e.g. data cubes).\n* A sophisticated user management system with customizable registration and confirmation workflows.\n* A contact form connected to the management backend.\n\n## Requirements\n\nDaiquiri is based on [Django](https://www.djangoproject.com/) and is written\nin Python. The following requirements are mandatory:\n\n* Python `>=3.9`\n* PostgreSQL `>=14`, MySQL `>=5.6`\n* RabbitMQ `>=3.5` (for asyncronous tasks like the query queue)\n\nFor demonstration, development or testing purposes, Daiquiri can be installed\non Linux, macOS, or even Windows. If you, however, intent to set up a production\nenviroment, serving Daiquiri over a Network or the Internet, we strongly suggest\nthat you use a recent Linux distribution, namely:\n\n* Debian 11\n* Ubuntu 22.04\n\n## Scientific Databases Using Daiquiri\n\nDaiquiri is currently used on several sites hosted and maintained by\nthe [Leibniz-Institute for Astrophysics Potsdam (AIP)](http://www.aip.de/):\n\n* [Gaia@AIP Services](https://gaia.aip.de)\n* [APPLAUSE archives](https://www.plate-archive.org)\n* [MUSE-Wide survey](https://musewide.aip.de)\n* [GREGOR project and archive](https://gregor.aip.de)\n* [CLUES \u2013 Constrained Local UniversE Simulations project](https://www.clues-project.org)\n* [CosmoSim database](https://www.cosmosim.org)\n* [RAVE Survey](https://www.rave-survey.org)\n\n## Installation\n\nYou can find the detailed instractions for the installation of Daiquiri in the\nmain documentation.\n\n* [Installation](https://django-daiquiri.github.io/docs/installation/)\n\n\n## Documentation\n\n**Main documenation**:  [django-daiquiri.github.io](https://django-daiquiri.github.io)\n\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "Daiquiri is a framework for the publication of scientific databases.",
    "version": "0.5.1",
    "project_urls": {
        "Homepage": "https://github.com/django-daiquiri/daiquiri"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "470ac1169c9a1e10e3e11f3fd1c93982db70c00e64f748f78f1eff412e6b1859",
                "md5": "fbe30bf1ed768a6dbf1d07e66df4e92d",
                "sha256": "4428e5f2a1303b5a26fbc8838b4c8cfed39001becc22ffe79d2e9e4022cf5bb3"
            },
            "downloads": -1,
            "filename": "django_daiquiri-0.5.1.tar.gz",
            "has_sig": false,
            "md5_digest": "fbe30bf1ed768a6dbf1d07e66df4e92d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 532208,
            "upload_time": "2024-08-16T12:43:13",
            "upload_time_iso_8601": "2024-08-16T12:43:13.342200Z",
            "url": "https://files.pythonhosted.org/packages/47/0a/c1169c9a1e10e3e11f3fd1c93982db70c00e64f748f78f1eff412e6b1859/django_daiquiri-0.5.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-16 12:43:13",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "django-daiquiri",
    "github_project": "daiquiri",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "requirements": [
        {
            "name": "astropy",
            "specs": [
                [
                    "~=",
                    "5.3.4"
                ]
            ]
        },
        {
            "name": "celery",
            "specs": [
                [
                    "~=",
                    "5.3.6"
                ]
            ]
        },
        {
            "name": "coverage",
            "specs": [
                [
                    "~=",
                    "7.2.7"
                ]
            ]
        },
        {
            "name": "Django",
            "specs": [
                [
                    "~=",
                    "4.2.8"
                ]
            ]
        },
        {
            "name": "django-allauth",
            "specs": [
                [
                    "~=",
                    "0.54.0"
                ]
            ]
        },
        {
            "name": "django-compressor",
            "specs": [
                [
                    "~=",
                    "4.4"
                ]
            ]
        },
        {
            "name": "django-extensions",
            "specs": [
                [
                    "~=",
                    "3.2.3"
                ]
            ]
        },
        {
            "name": "django-filter",
            "specs": [
                [
                    "~=",
                    "23.2"
                ]
            ]
        },
        {
            "name": "django-honeypot",
            "specs": [
                [
                    "~=",
                    "1.0.3"
                ]
            ]
        },
        {
            "name": "django-ipware",
            "specs": [
                [
                    "~=",
                    "5.0.0"
                ]
            ]
        },
        {
            "name": "django-libsass",
            "specs": [
                [
                    "~=",
                    "0.9"
                ]
            ]
        },
        {
            "name": "django-sendfile2",
            "specs": [
                [
                    "~=",
                    "0.7.0"
                ]
            ]
        },
        {
            "name": "django-settings-export",
            "specs": [
                [
                    "~=",
                    "1.2.1"
                ]
            ]
        },
        {
            "name": "django-test-generator",
            "specs": [
                [
                    "~=",
                    "0.6.1"
                ]
            ]
        },
        {
            "name": "django-vendor-files",
            "specs": [
                [
                    "~=",
                    "0.3"
                ]
            ]
        },
        {
            "name": "django-user-agents",
            "specs": [
                [
                    "~=",
                    "0.4.0"
                ]
            ]
        },
        {
            "name": "django-widget-tweaks",
            "specs": [
                [
                    "~=",
                    "1.4.12"
                ]
            ]
        },
        {
            "name": "djangorestframework",
            "specs": [
                [
                    "~=",
                    "3.15.2"
                ]
            ]
        },
        {
            "name": "dj-database-url",
            "specs": [
                [
                    "~=",
                    "2.0.0"
                ]
            ]
        },
        {
            "name": "drf-extensions",
            "specs": [
                [
                    "~=",
                    "0.7.1"
                ]
            ]
        },
        {
            "name": "ipaddress",
            "specs": [
                [
                    "~=",
                    "1.0.23"
                ]
            ]
        },
        {
            "name": "iso8601",
            "specs": [
                [
                    "~=",
                    "2.0.0"
                ]
            ]
        },
        {
            "name": "jsonfield",
            "specs": [
                [
                    "~=",
                    "3.1.0"
                ]
            ]
        },
        {
            "name": "lunr",
            "specs": [
                [
                    "~=",
                    "0.6.2"
                ]
            ]
        },
        {
            "name": "Markdown",
            "specs": [
                [
                    "~=",
                    "3.4.3"
                ]
            ]
        },
        {
            "name": "Pygments",
            "specs": [
                [
                    "~=",
                    "2.15.1"
                ]
            ]
        },
        {
            "name": "pytest",
            "specs": [
                [
                    "~=",
                    "6.2.5"
                ]
            ]
        },
        {
            "name": "pytest-cov",
            "specs": [
                [
                    "~=",
                    "4.1.0"
                ]
            ]
        },
        {
            "name": "pytest-django",
            "specs": [
                [
                    "~=",
                    "4.5.2"
                ]
            ]
        },
        {
            "name": "pytest-dotenv",
            "specs": [
                [
                    "~=",
                    "0.5.2"
                ]
            ]
        },
        {
            "name": "pytest-mock",
            "specs": [
                [
                    "~=",
                    "3.11.1"
                ]
            ]
        },
        {
            "name": "pytest-pythonpath",
            "specs": [
                [
                    "~=",
                    "0.7.4"
                ]
            ]
        },
        {
            "name": "queryparser-python3",
            "specs": [
                [
                    "~=",
                    "0.7"
                ]
            ]
        },
        {
            "name": "rules",
            "specs": [
                [
                    "~=",
                    "3.3"
                ]
            ]
        },
        {
            "name": "XlsxWriter",
            "specs": [
                [
                    "~=",
                    "3.1.2"
                ]
            ]
        }
    ],
    "lcname": "django-daiquiri"
}
        
Elapsed time: 0.53902s