This repository contains two robust Snakemake pipelines tailored for the genome assembly, quality assessment, and targeted reassembly of PacBio sequencing data (specifically HiFi reads).
An automated end-to-end workflow for de novo genome assembly of PacBio HiFi reads and subsequent taxonomic/quality evaluation.
Key Steps:
- Quality Control: Validates input FastQ reads using FastQC.
- De Novo Assembly: Assembles long reads using Hifiasm, optimized for diploid/haploid phasing.
- Contig Extraction: Parses
.gfagraphs to extract primary contigs (.fasta). - Completeness Assessment: Evaluates assembly completeness using BUSCO against the
insecta_odb10lineage (customizable). - Taxonomic Profiling: Queries contigs against the NCBI
ntdatabase usingblastn. - Contamination Screening: Generates Taxon-Annotated GC-Coverage (TAGC) plots using BlobTools by integrating the assembly, BAM coverage, BLAST hits, and BUSCO results.
A highly specialized pipeline designed for extracting subset reads aligned to a specific region/reference and reassembling them using SPAdes.
Key Steps:
- Reference Indexing: Indexes the target/reference genome using BWA.
- Alignment: Maps paired-end reads (
P1,P2) to the reference genome via BWA-ALN / BWA-SAMPE. - Read Extraction: Extracts reads of interest from the resulting SAM files utilizing a custom Perl script (
extract.fasta.from.sam.using.list.pl). - Targeted Assembly: Concatenates extracted reads and reassembles them ab initio utilizing SPAdes (
--careful,--only-assembler) incorporating trusted contigs.
Ensure you have Conda and Snakemake installed on your HPC or local machine.
The pipelines rely on the following bioinformatics tools being available in your environment or $PATH:
fastqchifiasmbuscoblastnblobtoolsbwa(v0.6.2+)spades.py(v3.6.1+)perl
Tip: It is highly recommended to manage these dependencies using a Conda environment.
- Edit the input variables at the top of
Pacbio-assembly-snakemake.smk:input_fastq = "your_reads.fastq.gz" threads = 92 taxdump = "/path/to/taxdump" busco_lineage = "/path/to/lineage_odb10"
- Execute the workflow:
snakemake -s Pacbio-assembly-snakemake.smk --cores 92
- Ensure your inputs (FASTA references and subset lists) are accurately defined within the rule parameters of
reassembly_snakemake.smk. - Execute the workflow:
snakemake -s reassembly_snakemake.smk --cores 30
Nasir Mahmood Abbasi
Computational Biologist & Single-Cell Transcriptomics Expert
🌐 Portfolio: nmabbasi.github.io
📚 Educational Portal: The Omics Hub
If you use these pipelines in your research, please consider citing or acknowledging this repository. For bug reports or feature requests, feel free to open an issue!