nf-core
nf-core Intro
A community effort to collect a curated set of analysis pipelines built using Nextflow.
At UTD we have lots of core facilities. The genomics core, imaging core, etc…
and nf-core!
Testing a pipeline
Usually you’d need to refer to the nf-core installation docs.
However GitHub Codespaces cut out some of that work.
Let’s run:
nextflow run nf-core/rnaseq -profile test,docker --outdir results
Download the Multiqc Report
- Open up the file explorer and navigate to
results/multiqc/multiqc_report.html
and right-click the html file and select Download. - Now that the MultiQC report is on your local computer open it up in a web browser. Preferably next to the pipeline’s output docs.
Using nf-core pipelines in Snakemake
Snakemake 6.2 and later allows to hand over execution steps to other workflow management systems. By this, it is possible to make use of workflows written for other systems, while performing any further pre- or postprocessing within Snakemake.
rule chipseq_pipeline: input: input="design.csv", fasta="data/genome.fasta", gtf="data/genome.gtf", # any --<argname> pipeline file arguments can be given here as <argname>=<path> output: "results/multiqc/broadPeak/multiqc_report.html", params: pipeline="nf-core/chipseq", revision="2.0.0", profile=["test", "docker"], # The chosen pipeline expects an --outdir to be given. # We infer this from the output file path. Since that file path can be changed # e.g. in case of cloud storage, we use a lambda function to infer the outdir. outdir=lambda wildcards, output: str(Path(output[0]).parents[-2]), # any --<argname> pipeline arguments can be given here as <argname>=<value> handover: True wrapper: "v3.12.1/utils/nextflow"
Snakemake Nextflow Wrapper Docs
Testing nf-core/rnaseq in Snakemake
rule rnaseq_pipeline: output: "results/multiqc/star_salmon/multiqc_report.html", params: pipeline="nf-core/rnaseq", revision="3.14.0", profile=["test", "docker"], outdir=lambda wildcards, output: str(Path(output[0]).parents[-2]), handover: True wrapper: "v3.12.1/utils/nextflow"
snakemake --cores 2
Running the golden snidget Data
rule rnaseq_pipeline: input: "reads/BORED_1_R1.fq.gz", input="inputs/samplesheet.csv", fasta="refs/genome.fa", gff="refs/features.gff", transcript_fasta="refs/transcripts.fa", output: "results/multiqc/star_salmon/multiqc_report.html", # TODO Add count file params: pipeline="nf-core/rnaseq", revision="3.14.0", profile=["docker"], extra=["-c inputs/extra.config"], outdir=lambda wildcards, output: str(Path(output[0]).parents[-2]), handover: True wrapper: "v3.12.1/utils/nextflow"