https://github.com/sanger-tol/genomeassembly
Implementation of ToL genome assembly workflows
https://github.com/sanger-tol/genomeassembly
genome-assembly genomics nextflow pipeline
Last synced: 5 months ago
JSON representation
Implementation of ToL genome assembly workflows
- Host: GitHub
- URL: https://github.com/sanger-tol/genomeassembly
- Owner: sanger-tol
- License: mit
- Created: 2022-07-13T11:54:21.000Z (almost 4 years ago)
- Default Branch: dev
- Last Pushed: 2026-01-14T16:50:31.000Z (5 months ago)
- Last Synced: 2026-01-14T20:05:00.814Z (5 months ago)
- Topics: genome-assembly, genomics, nextflow, pipeline
- Language: Nextflow
- Homepage: https://pipelines.tol.sanger.ac.uk/genomeassembly
- Size: 47.1 MB
- Stars: 24
- Watchers: 12
- Forks: 6
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Citation: CITATION.cff
Awesome Lists containing this project
README
# sanger-tol/genomeassembly
[](https://github.com/codespaces/new/sanger-tol/genomeassembly)
[](https://github.com/sanger-tol/genomeassembly/actions/workflows/nf-test.yml)
[](https://github.com/sanger-tol/genomeassembly/actions/workflows/linting.yml)[](https://doi.org/10.5281/zenodo.10391851)
[](https://www.nf-test.com)
[](https://www.nextflow.io/)
[](https://github.com/nf-core/tools/releases/tag/3.5.1)
[](https://docs.conda.io/en/latest/)
[](https://www.docker.com/)
[](https://sylabs.io/docs/)
[](https://cloud.seqera.io/launch?pipeline=https://github.com/sanger-tol/genomeassembly)
## Introduction
**sanger-tol/genomeassembly** is a bioinformatics pipeline for de-novo genome assembly from long read data (PacBio HiFi or ONT), long-range Hi-C data, and optionally Illumina WGS and Illumina 10X linked reads. It is capable of producing primary/alternative assembles, Hi-C phased assemblies using Hi-C data, and trio-binned assemblies using Illumina WGS data from parental sequencing.
The pipeline is built using [Nextflow](https://www.nextflow.io), a workflow tool to run tasks across multiple compute infrastructures in a very portable manner. It uses Docker/Singularity containers making installation trivial and results highly reproducible. The [Nextflow DSL2](https://www.nextflow.io/docs/latest/dsl2.html) implementation of this pipeline uses one container per process which makes it much easier to maintain and update software dependencies. Where possible, these processes have been submitted to and installed from [nf-core/modules](https://github.com/nf-core/modules) in order to make them available to all nf-core pipelines, and to everyone within the Nextflow community!
On release, automated continuous integration tests run the pipeline on a full-sized dataset on the LSF infrastructure. This ensures that the pipeline runs on LSF, has sensible resource allocation defaults set to run on real-world datasets, and permits the persistent storage of results to benchmark between pipeline releases and other analysis sources.
## Pipeline summary
1. If FastK databases and coverage information information are not provided, the pipeline first builds these
and estimates the genome coverage using [genomescope2](https://github.com/tbenavi1/genomescope2.0).
2. Assembles the provided long reads using [hifiasm](https://hifiasm.readthedocs.io), optionally producing hic-phased
or trio-binned assemblies.
3. (optional) Purges retained haplotigs from the assembly using [purge_dups](https://github.com/dfguan/purge_dups).
4. (optional) Polishes the combined assembly using Illumina 10X reads with [Longranger](https://support.10xgenomics.com/genome-exome/software/pipelines/latest/what-is-long-ranger) and [Freebayes](https://github.com/freebayes/freebayes)
5. Maps Hi-C reads to each assembly using [bwamem2](https://github.com/bwa-mem2/bwa-mem2) or [minimap2](https://github.com/lh3/minimap2/).
6. Scaffolds each assembly using long-range Hi-C interactions using [YaHS](https://github.com/c-zhou/yahs).
7. Produces numerical statistics for each assembly at each stage of the pipeline using [GFASTATS](https://github.com/vgl-hub/gfastats) (assembly statiscics), [BUSCO](https://busco.ezlab.org/) (single-copy ortholog statistics), and [MERQURY.FK](https://github.com/thegenemyers/MERQURY.FK) (QV and kmer-completeness).
8. Assembles organelles using de-novo assembly [oatk](https://github.com/c-zhou/oatk) and reference-based assembly [MitoHiFi](https://github.com/marcelauliano/MitoHiFi).
## Usage
> [!NOTE]
> If you are new to Nextflow and nf-core, please refer to [this page](https://nf-co.re/docs/usage/installation) on how to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/introduction#how-to-run-a-pipeline) with `-profile test` before running the workflow on actual data.
Currently, it is advised to run the pipeline with docker or singularity as some modules do not have a conda env associated with them.
Now, you can run the pipeline using:
```bash
nextflow run sanger-tol/genomeassembly \
-profile \
--input input.yaml \
--outdir
```
> [!WARNING]
> Please provide pipeline parameters via the CLI or Nextflow `-params-file` option. Custom config files including those provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_; see [docs](https://nf-co.re/docs/usage/getting_started/configuration#custom-configuration-files).
## Credits
sanger-tol/genomeassembly was originally written by Ksenia Krashennikova and Jim Downie.
We thank the following people for their extensive assistance in the development of this pipeline:
@priyanka-surana for the code review, very helpful coding suggestions, and assistance with pushing this pipeline forward through development.
@mcshane and @c-zhou for the design and implementation of the original pipelines for purging (@mcshane), polishing (@mcshane) and scaffolding (@c-zhou).
TreeVal team Damon-Lee Pointon (@DLBPointon), Yumi Sims (@yumisims) and William Eagles (@weaglesBio) for implementation of the hic-mapping pipeline.
@muffato for help with nf-core integration, dealing with infrastructure and troubleshooting, for the code reviews and valuable suggestions at the different stages of the pipeline development.
@gq1 for the code review, valuable suggestions to the code improvement and contributions to the full test setup.
@mahesh-panchal for nextflow implementation of the purging pipeline, code review and valuable suggestions to the nf-core modules implementation.
## Contributions and Support
If you would like to contribute to this pipeline, please see the [contributing guidelines](.github/CONTRIBUTING.md).
## Citations
If you use sanger-tol/genomeassembly for your analysis, please cite it using the following doi: [10.5281/zenodo.10391851](https://zenodo.org/records/10391852).
An extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file.
This pipeline uses code and infrastructure developed and maintained by the [nf-core](https://nf-co.re) community, reused here under the [MIT license](https://github.com/nf-core/tools/blob/main/LICENSE).
> **The nf-core framework for community-curated bioinformatics pipelines.**
>
> Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.
>
> _Nat Biotechnol._ 2020 Feb 13. doi: [10.1038/s41587-020-0439-x](https://dx.doi.org/10.1038/s41587-020-0439-x).