All Projects → panoptes-organization → panoptes

panoptes-organization / panoptes

Licence: MIT license
Monitor computational workflows in real time

Programming Languages

CSS
56736 projects
HTML
75241 projects
javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to panoptes

Porcupine
Express parametrable, composable and portable data pipelines
Stars: ✭ 70 (+55.56%)
Mutual labels:  reproducible-research, workflows
sunbeam
A robust, extensible metagenomics pipeline
Stars: ✭ 143 (+217.78%)
Mutual labels:  snakemake, reproducible-research
galaksio
An easy-to-use way for running Galaxy workflows.
Stars: ✭ 19 (-57.78%)
Mutual labels:  reproducible-research, workflows
tailseeker
Software for measuring poly(A) tail length and 3′-end modifications using a high-throughput sequencer
Stars: ✭ 17 (-62.22%)
Mutual labels:  snakemake
snakefmt
The uncompromising Snakemake code formatter
Stars: ✭ 78 (+73.33%)
Mutual labels:  snakemake
Rmarkdown tutorial
Reproducible Research with Rmarkdown: data management, analysis, and reporting all-in-one
Stars: ✭ 18 (-60%)
Mutual labels:  reproducible-research
renv
Creating virtual environments for R.
Stars: ✭ 18 (-60%)
Mutual labels:  reproducible-research
dentist
Close assembly gaps using long-reads at high accuracy.
Stars: ✭ 39 (-13.33%)
Mutual labels:  snakemake
aws-genomics-workflows
Genomics Workflows on AWS
Stars: ✭ 131 (+191.11%)
Mutual labels:  workflows
alfred-workflow-zoom-meetings
Join a Zoom meeting without the link opening in your browser.
Stars: ✭ 45 (+0%)
Mutual labels:  workflows
groundhog
Reproducible R Scripts Via Date Controlled Installing & Loading of CRAN & Git Packages
Stars: ✭ 58 (+28.89%)
Mutual labels:  reproducible-research
fertile
creating optimal conditions for reproducibility
Stars: ✭ 52 (+15.56%)
Mutual labels:  reproducible-research
rcompendium
📦 Create a package or compendium structure
Stars: ✭ 26 (-42.22%)
Mutual labels:  reproducible-research
docs
Documentation of the Snakemake-Workflows project
Stars: ✭ 123 (+173.33%)
Mutual labels:  snakemake
papeR
A toolbox for writing Sweave or other LaTeX-based papers and reports and to prettify the output of various estimated models.
Stars: ✭ 26 (-42.22%)
Mutual labels:  reproducible-research
tibanna
Tibanna helps you run your genomic pipelines on Amazon cloud (AWS). It is used by the 4DN DCIC (4D Nucleome Data Coordination and Integration Center) to process data. Tibanna supports CWL/WDL (w/ docker), Snakemake (w/ conda) and custom Docker/shell command.
Stars: ✭ 61 (+35.56%)
Mutual labels:  snakemake
benchmark VAE
Unifying Variational Autoencoder (VAE) implementations in Pytorch (NeurIPS 2022)
Stars: ✭ 1,211 (+2591.11%)
Mutual labels:  reproducible-research
workflUX
An open-source, cloud-ready web application for simplified deployment of big data workflows.
Stars: ✭ 26 (-42.22%)
Mutual labels:  workflows
FACIL
Framework for Analysis of Class-Incremental Learning with 12 state-of-the-art methods and 3 baselines.
Stars: ✭ 411 (+813.33%)
Mutual labels:  reproducible-research
targets-tutorial
Short course on the targets R package
Stars: ✭ 87 (+93.33%)
Mutual labels:  reproducible-research

alt text

Bioinformaticians and data scientists, rely on computational frameworks (e.g. snakemake, nextflow, CWL, WDL) to process, analyze and integrate data of various types. Such frameworks allow scientists to combine software and custom tools of different origin in a unified way, which lets them reproduce the results of others, or reuse the same pipeline on different datasets. One of the fundamental issues is that the majority of the users execute multiple pipelines at the same time, or execute a multistep pipeline for a big number of datasets, or both, making it hard to track the execution of the individual steps or monitor which of the processed datasets are complete. panoptes is a tool that monitors the execution of such workflows.

panoptes is a service that can be used by:

  • Data scientists, bioinformaticians, etc. that want to have a general overview of the progress of their pipelines and the status of their jobs
  • Administrations that want to monitor their servers
  • Web developers that want to integrate the service in bigger web applications

Note: panoptes is in early development stage and the first proof of concept server will support only workflows written in snakemake.

Installation

Basic installation process

Requirements

Option 1: Install via pypi and run server

Create virtual environment

virtualenv -p `which python3` venv

Activate virtual environment

source venv/bin/activate

Install via pypi

pip install panoptes-ui

Run server

panoptes

Server should run on: 127.0.0.1:5000

By default it should generate an sqlite database: .panoptes.db

Option 2: Install via conda and run server

Create conda environment

conda create --name panoptes

Activate conda environment

conda activate panoptes

Install via pypi OR conda

conda install -c panoptes-organization panoptes-ui

Run server

panoptes

Server should run on: 127.0.0.1:5000

By default it should generate an sqlite database: .panoptes.db

Option 3: Install from source code and run server

Clone repo

git clone https://github.com/panoptes-organization/panoptes.git

Enter repo

cd panoptes

Create virtual environment

virtualenv -p `which python3` venv

Activate virtual environment

source venv/bin/activate

Install all requirements

pip install .

Run server

panoptes

Server should run on: 127.0.0.1:5000

By default it should generate an sqlite database: .panoptes.db

Docker installation

Requirements

  • docker
  • docker-compose

Build and run with docker-compose

Build

docker-compose build

Run

docker-compose up -d

Server should run on: http://127.0.0.1:8000

Stop

docker-compose down

Run an example workflow

In order to run an example workflow please follow the instructions here

panoptes in action

Watch the video

panoptes API

Panoptes provides the following API endpoints:

Endpoint Method Description
/api/service-info GET Server status
/api/workflows GET Get all workflows
/api/workflow/<workflow-id> GET Get workflow status
/api/workflow/<workflow-id>/jobs GET Get all jobs of a workflow
/api/workflow/<workflow-id>/job/<job-id> GET Get job status
/api/workflow/<workflow-id> PUT Rename a workflow
Expects a dictionary with new name
(e.g. {'name': 'my new workflow name'})
/api/workflow/<workflow-id> DELETE Delete a workflow
/api/workflows/all DELETE Clean up database

To communicate with panoptes the following endpoints are used by snakemake:

Endpoint Method Description
/api/service-info GET Server status (same as above)
/create_workflow GET Get a unique id/name str(uuid.uuid4()) for each workflow
/update_workflow_status POST Panoptes receives a dictionary from snakemake that contains:
- A log message dictionary
- The current timestamp
- The unique id/name of the workflow.
(e.g. {'msg': repr(msg), 'timestamp': time.asctime(), 'id': id})

Contribute

Please see the Contributing instructions.

CI server

Changes in develop or master trigger a Travis build (and runs tests)

Contact

In case the issues section is not enough for you, you can also contact us via discord

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].