Skip to content

OpenOmics/weave

Repository files navigation

weave 🔬

An awesome demultiplexing and quality control pipeline

tests docs GitHub issues GitHub license

This is the home of the demultiplexing and quality control pipeline, weave. Its long-term goal is to serve as a push-button pipeline for demultiplexing and creation of quality control artifacts for assessing the quality of incoming illumnia sequnecing dataset.

weave DAG

Overview

Welcome to weave's documentation! This guide is the main source of documentation for users that are getting started with the weave.

The ./weave pipeline is composed of two sub commands to setup and run the pipeline across different systems. Each of the available sub commands perform different functions:

weave run
Run the weave pipeline with your input files.

weave cache
Downloads the reference files for the pipeline to a selected directory.

weave is a two-pronged pipeline; the first prong detects and uses the appropriate illumnia software to demultiplex the ensemble collection of reads into their individual samples and converts the sequencing information into the FASTQ file format. From there out the second prong is a distrubted parallele step that uses a variety of commonly accepting nextgen sequencing tools to report, visualize, and calculate the quality of the reads after sequencing. weave makes uses of the ubiquitous containerization software singularity2 for modularity, and the robust pipelining DSL Snakemake3

weave common use is to gauge the qualtiy of reads for potential downstream analysis. Since bioinformatic analysis requires robust and accurate data to draw scientific conclusions, this helps save time and resources when it comes to analyzing the volumous amount of sequencing data that is collected routinely.

Several of the applications that weave uses to visualize and report quality metrics are:

Dependencies

System Requirements: singularity>=3.5
Python Requirements: snakemake>=5.14.0, pyyaml, progressbar, requests, terminaltables, tabulate

Please refer to the complete installation documents for detailed information.

Installation

# clone repo
git clone https://github.com/OpenOmics/weave.git
cd weave
# create virtual environment
python -m venv ~/.my_venv
# activate environment
source ~/.my_venv/bin/activate
pip install -r requirements.txt 

Please refer to the complete installation documents for detailed information.

Contribute

This site is a living document, created for and by members like you. weave is maintained by the members of OpenOmics and is improved by continous feedback! We encourage you to contribute new content and make improvements to existing content via pull request to our GitHub repository.

References

1. Philip Ewels, Måns Magnusson, Sverker Lundin, Max Käller, MultiQC: summarize analysis results for multiple tools and samples in a single report, Bioinformatics, Volume 32, Issue 19, October 2016, Pages 3047–3048.
2. Kurtzer GM, Sochat V, Bauer MW (2017). Singularity: Scientific containers for mobility of compute. PLoS ONE 12(5): e0177459.
3. Koster, J. and S. Rahmann (2018). "Snakemake-a scalable bioinformatics workflow engine." Bioinformatics 34(20): 3600.
4. Menzel P., Ng K.L., Krogh A. (2016) Fast and sensitive taxonomic classification for metagenomics with Kaiju. Nat. Commun. 7:11257
5. Wingett SW and Andrews S. FastQ Screen: A tool for multi-genome mapping and quality control [version 2; referees: 4 approved]. F1000Research 2018, 7:1338
6. Shifu Chen, Yanqing Zhou, Yaru Chen, Jia Gu; fastp: an ultra-fast all-in-one FASTQ preprocessor, Bioinformatics, Volume 34, Issue 17, 1 September 2018, Pages i884–i890.
7. Wood, D.E., Lu, J. & Langmead, B. Improved metagenomic analysis with Kraken 2. Genome Biol 20, 257 (2019).