[meta]
name = "quast"
category = "assembly"
description = "Quality assessment tool for genome assemblies with reference-based and reference-free metrics"
tags = ["assembly", "quality-assessment", "genome", "n50", "contigs", "benchmarking", "metagenome"]
author = "oxo-call built-in"
source_url = "https://quast.sourceforge.net/"

[context]
concepts = [
    "QUAST assesses assembly quality with metrics: N50, N90, total length, number of contigs, misassemblies, and more.",
    "Use -r for reference genome (enables reference-based metrics); without -r, only reference-free metrics are computed.",
    "Use -g for gene annotation GFF/GTF (enables gene coverage metrics).",
    "Multiple assemblies can be compared in one run: quast assembly1.fasta assembly2.fasta -o quast_output/",
    "Use --threads N for parallel processing; --min-contig for minimum contig length threshold (default: 500 bp).",
    "metaQUAST (for metagenomes) automatically downloads reference genomes and aligns contigs.",
    "QUAST outputs HTML report, PDF, and TSV table in the output directory.",
    "Key metrics: N50 (contig length where 50% of assembly is in contigs ≥ this size), L50 (number of contigs ≥ N50).",
]

pitfalls = [
    "Without -r reference, misassembly detection is not possible — always provide reference for isolate assemblies.",
    "The reference genome must match the genome build used for assembly for accurate misassembly detection.",
    "--min-contig default (500 bp) excludes short contigs from metrics — adjust based on your assembly.",
    "For fragmented assemblies, NG50 (based on genome size) is more informative than N50.",
    "metaQUAST requires internet access for downloading reference genomes automatically.",
    "QUAST HTML reports require a browser — download locally if running on a server.",
]

[[examples]]
task = "assess assembly quality with reference genome"
args = "-r reference.fasta -g genes.gff assembly.fasta -o quast_output/ --threads 8"
explanation = "-r reference for comparison; -g gene annotation; output in quast_output/; generates HTML report"

[[examples]]
task = "compare multiple assemblies without reference genome"
args = "spades_assembly.fasta megahit_assembly.fasta flye_assembly.fasta -o assembly_comparison/ --threads 8"
explanation = "multiple assembly FASTAs compared side-by-side; --no-icarus to skip large interactive browser"

[[examples]]
task = "assess metagenome assembly quality with metaQUAST"
args = "metaquast.py -r reference1.fasta,reference2.fasta assembly.fasta -o metaquast_output/ --threads 16"
explanation = "metaquast.py for metagenome assemblies; -r multiple references; or use --auto-ref for automatic"

[[examples]]
task = "assess assembly with minimum contig length filter"
args = "-r reference.fasta assembly.fasta -o quast_out/ --min-contig 1000 --threads 8"
explanation = "--min-contig 1000 excludes contigs shorter than 1000 bp from all statistics"
