SODAR Core framework and project management apps
Project description
SODAR Core is a framework for Django web application development.
It was conceived to facilitate the creation of scientific data management and analysis web applications, but can be useful in other contexts as well. In that it is similar to the CMS or ecommerce frameworks that you can find Awesome Django List but you will find the components/libraries provided in SODAR Core are more generic and in this reflecting the broader range of applications that we target.
Examples / See It In Action
SODAR Core is a framework for developing Django web applications. The following data management and analysis web applications are based on SODAR Core and have been made available as open source:
SODAR is the system for Omics data access and retrieval. It is used to model study metadata and manage associated data files in different Omics research projects. SODAR Core was created by separating re-usable research project management components from the SODAR project. The source code of SODAR can be found on github.com/bihealth/sodar-server.
VarFish is a web-based tool for the analysis of variants. It showcases how to build a complex data warehousing and data analysis web appliction using SODAR Core. More details are described in the NAR Web Server Issue publication (doi:10.1093/nar/gkaa241). The source code can be found on github.com/bihealth/varfish-server. A demo is available at varfish-demo.bihealth.org.
Digestiflow is a web-based data system for the management and demultiplexing of Illumina Flow Cells. It further implements various tools for sanity checking Illumina sample sheets and quality control (e.g., comparing barcode adapter sequence and actual sequence present in the sequencer output). You can find out more in our publication in Bioinformatics (doi:10.1093/bioinformatics/btz850). The source code can be found on github.com/bihealth/digestiflow-server.
Kiosc is a web application that allows to build scheduler Docker containers for “data science” apps and dashboards. You can find the source code on github.com/bihealth/kiosc.
Quickstart
SODAR Core can only be used from within Django projects. The easiest way to start out is following the For the Impatient section in our documentation.
Introduction
The SODAR Core repository containes reusable and non-domain-specific apps making up the base of the SODAR system. These apps can be used for any Django application which wants to make use of the following features:
Project-based user access control
Dynamic app content management
Advanced project activity logging
Small file uploading and browsing
Managing server-side background jobs
Caching and aggregation of data from external services
Tracking site information and statistics
API token management
This repository provides the following installable Django apps:
projectroles: Base app for project access management and dynamic app content management. All other apps require the integration of projectroles.
adminalerts: Site app for displaying site-wide messages to all users.
appalerts: Site app and backend for raising alerts to users from apps.
bgjobs: Project app for managing background jobs.
filesfolders: Storage and management of small files.
siteinfo: Site app for displaying site information and statistics for administrators.
sodarcache: Generic caching and aggregation of data referring to external services.
timeline: Project app for logging and viewing project-related activity.
tokens: Token management for API access.
userprofile: Site app for viewing user profiles.
Also included are resources and examples for developing SODAR compatible apps.
Installation
The django-sodar-core package can be installed into your Django project from PyPI as follows. Note that it is strongly recommended to freeze the dependency to a specific version, as this package is under active development and breaking changes are possible.
pip install django-sodar-core==1.0.2
For installing a development version you can point your dependency to a specific commit ID in GitHub. Note that these versions may not be stable.
pip install -e git+https://github.com/bihealth/sodar-core.git@xxxxxxxxxxxxx#egg=django-sodar-core
Please note that This package installs a collection of Django apps to be used in a Django web site project. See SODAR Core documentation for detailed documentation on use, integration and development.
Repository
The branches of the SODAR Core repository are organized as follows:
- main
The latest stable release.
- dev
The current development branch. Most recent features go here, but stability is not guaranteed. Pull requests should always be based on this branch.
When including SODAR Core in your Django project, it is highly recommended to freeze your dependency to a specific release tag or commit ID. The project is under development and breaking changes may be introduced frequently.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file django_sodar_core-1.0.2.tar.gz
.
File metadata
- Download URL: django_sodar_core-1.0.2.tar.gz
- Upload date:
- Size: 457.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/59.6.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1efbce524671eae8645ab5516129b7d1a6d45cb76b196539f08ab887c143471b |
|
MD5 | cb29be2e7559183c9bb48802c2ea8210 |
|
BLAKE2b-256 | a5a2545fde4ea845604c2888cb620e79fe82e0b75c4638f4e794fa18ccddc27d |