.. image:: artwork/github.png
:alt: bcbio banner
:align: center
Validated, scalable, community developed variant calling, RNA-seq and small RNA
analysis. You write a high level configuration file specifying your inputs and
analysis parameters. This input drives a parallel run that handles distributed
execution, idempotent processing restarts and safe transactional steps. bcbio
provides a shared community resource that handles the data processing component
of sequencing analysis, providing researchers with more time to focus on the
downstream biology.
.. image:: https://travis-ci.org/bcbio/bcbio-nextgen.png
:target: https://travis-ci.org/bcbio/bcbio-nextgen
Features
-
Community developed: We welcome contributors with the goal of
overcoming the biological, algorithmic and computational challenges
that face individual developers working on complex pipelines in
quickly changing research areas. See our users page
_ for examples
of bcbio-nextgen deployments, and the developer documentation
_ for
tips on contributing.
-
Installation: A single installer script
_ prepares all
third party software, data libraries and system configuration files.
-
Automated validation
_: Compare variant calls against common reference
materials or sample specific SNP arrays to ensure call correctness.
Incorporation of multiple approaches for alignment, preparation and
variant calling enable unbiased comparisons of algorithms.
-
Distributed: Focus on parallel analysis and scaling
_ to handle
large population studies and whole genome analysis. Runs on single
multicore computers, in compute clusters using IPython parallel
,
or on the Amazon cloud. See the parallel documentation
for full
details.
-
Multiple analysis algorithms: bcbio-nextgen provides configurable
variant calling, RNA-seq and small RNA pipelines
_.
.. _IPython parallel: http://ipython.org/ipython-doc/dev/index.html
.. _parallel documentation: https://bcbio-nextgen.readthedocs.org/en/latest/contents/parallel.html
.. _A single installer script: https://bcbio-nextgen.readthedocs.org/en/latest/contents/installation.html#automated
.. _users page: https://bcbio-nextgen.readthedocs.org/en/latest/contents/introduction.html#users
.. _developer documentation: https://bcbio-nextgen.readthedocs.org/en/latest/contents/code.html
.. _variant calling, RNA-seq and small RNA pipelines: https://bcbio-nextgen.readthedocs.org/en/latest/contents/pipelines.html
.. _parallel analysis and scaling: http://bcb.io/2013/05/22/scaling-variant-detection-pipelines-for-whole-genome-sequencing-analysis/
.. _Automated validation: http://bcb.io/2014/05/12/wgs-trio-variant-evaluation/
Quick start
-
Install
_ bcbio-nextgen
with all tool dependencies and data files::
wget https://raw.github.com/bcbio/bcbio-nextgen/master/scripts/bcbio_nextgen_install.py
python bcbio_nextgen_install.py /usr/local/share/bcbio --tooldir=/usr/local \
--genomes GRCh37 --aligners bwa --aligners bowtie2
producing an editable system configuration file
_ referencing the installed
software, data and system information.
-
Automatically create a processing description
_ of sample FASTQ and BAM files
from your project, and a CSV file of sample metadata::
bcbio_nextgen.py -w template freebayes-variant project1.csv sample1.bam sample2_1.fq sample2_2.fq
This produces a sample description file
_ containing pipeline configuration options
_.
-
Run analysis, distributed across 8 local cores::
cd project1/work
bcbio_nextgen.py ../config/project1.yaml -n 8
.. _system configuration file: https://github.com/bcbio/bcbio-nextgen/blob/master/config/bcbio_system.yaml
.. _sample description file: https://github.com/bcbio/bcbio-nextgen/blob/master/config/bcbio_sample.yaml
.. _Automatically create a processing description: https://bcbio-nextgen.readthedocs.org/en/latest/contents/configuration.html#automated-sample-configuration
.. _Install: https://bcbio-nextgen.readthedocs.org/en/latest/contents/installation.html#automated
.. _configuration options: https://bcbio-nextgen.readthedocs.org/en/latest/contents/configuration.html
Documentation
See the full documentation
_ and longer analysis-based articles <http://bcb.io>
. We welcome enhancements or problem reports using GitHub
and discussion on the biovalidation mailing list
_.
.. _full documentation: https://bcbio-nextgen.readthedocs.org
.. _GitHub: https://github.com/bcbio/bcbio-nextgen/issues
.. _biovalidation mailing list: https://groups.google.com/d/forum/biovalidation
Contributors
Miika Ahdesmaki
_, AstraZenecaLuca Beltrame
_, IRCCS "Mario Negri" Institute for Pharmacological Research, Milan, ItalyChristian Brueffer
_, Lund University, Lund, SwedenAlla Bushoy
_, AstraZenecaGuillermo Carrasco
_, Science for Life Laboratory, StockholmNick Carriero <http://www.simonsfoundation.org/about-us/staff/staff-bios/#nick-carriero-ph-d>
_, Simons FoundationBrad Chapman
_, Harvard Chan Bioinformatics CoreSaket Choudhary
_, University Of Southern CaliforniaPeter Cock
_, The James Hutton InstituteMatthias De Smet <https://github.com/matthdsm>
_, Center for Medical Genetics, Ghent University Hospital, BelgiumMatt Edwards
_, MITMario Giovacchini
_, Science for Life Laboratory, StockholmKarl Gutwin <https://twitter.com/kgutwin>
_, BiogenJeff Hammerbacher
_, Icahn School of Medicine at Mount SinaiOliver Hofmann <https://umccr.github.io/>
_, University of Melbourne Centre for Cancer ResearchJohn Kern <https://github.com/kern3020>
_Rory Kirchner
_, Harvard Chan Bioinformatics CoreTetiana Khotiainsteva <https://github.com/tetianakh>
_, ArdigenJakub Nowacki
_, AstraZenecaJohn Morrissey <https://github.com/jwm>
_, Harvard Chan Bioinformatics CoreLorena Pantano <https://github.com/lpantano>
_, Harvard Chan Bioinformatics CoreBrent Pedersen
_, University of Colorado DenverJames Porter
_, The University of ChicagoValentine Svensson
_, Science for Life Laboratory, StockholmPaul Tang
_, UCSFStephen Turner
_, University of VirginiaRoman Valls
_, Science for Life Laboratory, StockholmKevin Ying
_, Garvan Institute of Medical Research, Sydney, AustraliaVlad Saveliev
_, Center for Algorithmic Biotechnology, St. Petersburg University
.. _Miika Ahdesmaki: https://github.com/mjafin
.. _Luca Beltrame: https://github.com/lbeltrame
.. _Christian Brueffer: https://github.com/cbrueffer
.. _Guillermo Carrasco: https://github.com/guillermo-carrasco
.. _Alla Bushoy: https://github.com/abushoy
.. _Brad Chapman: https://github.com/chapmanb
.. _Peter Cock: https://github.com/peterjc
.. _Mario Giovacchini: https://github.com/mariogiov
.. _Rory Kirchner: https://github.com/roryk
.. _Jakub Nowacki: https://github.com/jsnowacki
.. _Brent Pedersen: https://github.com/brentp
.. _James Porter: https://github.com/porterjamesj
.. _Valentine Svensson: https://github.com/vals
.. _Paul Tang: https://github.com/tanglingfung
.. _Stephen Turner: https://github.com/stephenturner
.. _Roman Valls: https://github.com/brainstorm
.. _Kevin Ying: https://github.com/kevyin
.. _Jeff Hammerbacher: https://github.com/hammer
.. _Matt Edwards: https://github.com/matted
.. _Saket Choudhary: https://github.com/saketkc
.. _Vlad Saveliev: https://github.com/vladsaveliev
License
The code is freely available under the MIT license
_.
.. _MIT license: http://www.opensource.org/licenses/mit-license.html