Workflow Gallery#
The Workflow Gallery is a curated collection of complete, validated example workflows that progress from fundamental concepts to production-grade bioinformatics pipelines. Every workflow in this gallery passes oxo-flow validate and demonstrates real CLI output.
Use this gallery to learn oxo-flow incrementally — each example builds on concepts from the previous one.
For larger, production workflows — ports of popular nf-core & Snakemake pipelines, original designs, and community submissions — see the oxo-flow-community catalog.
Learning Path#
| # | Workflow | Complexity | Concepts Covered |
|---|---|---|---|
| 01 | Hello World | ⭐ | Minimal rule, shell commands, output files |
| 02 | File Pipeline | ⭐⭐ | Multi-rule DAG, input/output chaining, config variables |
| 03 | Parallel Samples | ⭐⭐ | Wildcard expansion, fan-out/fan-in, resource declarations |
| 04 | Scatter-Gather | ⭐⭐⭐ | Data partitioning, parallel chunk processing, result merging |
| 05 | Environment Management | ⭐⭐⭐ | Per-rule conda, docker, and singularity environments |
| 06 | RNA-seq Quantification | ⭐⭐⭐⭐ | Complete transcriptomics pipeline, STAR, featureCounts, MultiQC |
| 07 | WGS Germline Calling | ⭐⭐⭐⭐⭐ | GATK best practices, BQSR, HaplotypeCaller, VEP annotation |
| 08 | Multi-Omics Integration | ⭐⭐⭐⭐⭐ | WGS + RNA-seq + Methylation, branching DAG, cross-omics integration |
| 09 | Single-Cell RNA-seq | ⭐⭐⭐⭐ | Droplet-based scRNA-seq, 10x Genomics, CellRanger, Seurat |
| 10 | Transform Operator | ⭐⭐⭐ | Unified split → map → combine, scatter-gather in a single rule |
| 11 | Conditional Execution | ⭐⭐⭐ | when conditions, WGS/WES mode switching, config-gated branches |
| 12 | Cohort Analysis | ⭐⭐⭐⭐ | Multi-group samples, cohort-level QC aggregation, per-rule environments |
| 13 | Germline Variant Calling | ⭐⭐⭐⭐ | Per-sample GATK chain: FastQC/fastp → BWA-MEM2 → BQSR → HaplotypeCaller |
| 14 | Paired Experiment-Control | ⭐⭐⭐⭐⭐ | Single-pair somatic calling: Mutect2, FilterMutectCalls, VEP, report |
| 15 | Paired Experiment-Control (Pairs) | ⭐⭐⭐⭐⭐ | The [[pairs]]-driven scalable version of 14 |
| 16 | 16S Amplicon (QIIME2) | ⭐⭐⭐⭐ | QIIME2 artifact chaining, DADA2 denoising, phylogenetic diversity |
Quick Start#
Every gallery workflow can be validated, inspected, and dry-run using the oxo-flow CLI:
# Validate a workflow
oxo-flow validate examples/gallery/01_hello_world.oxoflow
# Preview the execution plan
oxo-flow dry-run examples/gallery/02_file_pipeline.oxoflow
# Visualize the DAG
oxo-flow graph examples/gallery/06_rnaseq_quantification.oxoflow
# Lint for best practices
oxo-flow lint examples/gallery/07_wgs_germline.oxoflow
graph shows the template DAG, dry-run shows the expanded DAG
oxo-flow graph displays the workflow before wildcard/sample/scatter
expansion — use it to inspect the rule-level structure. oxo-flow dry-run
shows the fully expanded DAG with all per-sample/per-chromosome job
instances and their concrete dependencies. For gallery workflows with
[[sample_groups]], scatter, or expand_inputs, the two views differ.
Skill Progression#
Beginner (Workflows 01–02)#
Learn the fundamental building blocks: rules, shell commands, inputs, outputs, and how oxo-flow resolves dependencies automatically from file paths.
Intermediate (Workflows 03–05)#
Master wildcards for multi-sample processing, scatter-gather parallelism patterns, and per-rule environment isolation with conda, docker, and singularity.
Advanced (Workflows 06–10)#
Build production-grade bioinformatics pipelines covering RNA-seq, whole-genome sequencing, multi-omics integration, and single-cell analysis with auditable checkpoint-driven reporting and complex DAG topologies — plus the unified transform operator for scatter-gather parallelism.
Applied Patterns (Workflows 11–15)#
Reference pipelines for real study designs: condition-gated branches, population cohorts, per-sample germline calling, and paired tumor/control somatic calling (single pair and [[pairs]]-scaled).
All Workflows Are Tested#
Every workflow in this gallery is validated as part of oxo-flow's continuous integration pipeline. The validation output shown in each page is the actual CLI output — not simulated.