Nextflow dashboard and API to demonstrate running Nextflow pipeline from Django web app and catching the workflow log messages with an API to store in a database. Uses Celery and RabbitMQ for concurrent processing of Nextflow pipeline and capture of http weblog messages in Django database.
Clone this repo:
git clone https://github.com/stevekm/nf-dashboard-dj.git
cd nf-dashboard-dj
Install dependencies with conda in the current directory
make install
- Supply a username and password for the admin account
Start RabbitMQ and Celery servers
make rabbitmq-start celery-start
Start the development Django server
make runserver
Navigate to http://127.0.0.1:8000/
in your web browser and click the "Start" button to run a Nextflow pipeline
Check out the Nextflow weblog
messages in the Django admin panel at http://127.0.0.1:8000/admin
When finished, shut down Celery and RabbitMQ:
make celery-stop rabbitmq-stop
all required dependencies are supplied via the included conda installation (make conda-install
)
-
Python 3.7
-
Nextflow
-
Django 2.1.5
-
Celery
-
RabbitMQ
Tested on macOS 10.12.6 Sierra