Skip to content
Single-cell & spatiallatest-release

marsseq

nf-core/marsseq

MARS-seq v2 preprocessing pipeline

version1.0.3b02ede7730Jul 18, 2023 Upstream Usage docs

Key tools

cutadaptFastQCfastpSTARSTARsoloMultiQC

Run it

nfclaw
nfclaw run marsseq --input samplesheet.csv --outdir results -profile docker
raw nextflow
nextflow run pipelines/marsseq/upstream -profile docker --input samplesheet.csv --outdir results
demo · bundled test profile
nfclaw run marsseq --demo --outdir results # adds the upstream test profile (-profile test,docker)

Inputs

columntyperequiredallowed valuesconstraints
batchstringyesmatches ^\S+$
fastq_1stringyesmatches ^\S+\.f(ast)?q\.gz$
fastq_2stringyes
amp_batchesstringyesmatches ^\S+.xlsx$
seq_batchesstringyesmatches ^\S+.xlsx$
well_cellsstringyesmatches ^\S+.xlsx$

--input must match ^\S+\.csv$.

The samplesheet is a CSV with this header (the columns the schema requires); fill each value per the table above and reference.md (no example value is invented here):

csv
batch,fastq_1,fastq_2,amp_batches,seq_batches,well_cells

From data files. --input may also be the data files — a directory (searched recursively), a quoted glob, or files (--input once per file) — from which nfclaw writes this samplesheet: fastq_1/fastq_2 from FastQ files (mates paired by _R1/_R2, or by _1/_2 when their read names show they are mates). Set the required columns no file determines with --sheet-set COLUMN=VALUE (a constant or a {sample}/{lane} template): batch (matching ^\S+$); amp_batches (matching ^\S+.xlsx$); seq_batches (matching ^\S+.xlsx$); well_cells (matching ^\S+.xlsx$). Preview it with --check; a run records it in <outdir>/provenance/ for replay.

Reference genome

--genome defaults to mm10. The pinned configuration gives --genome mm10 the FASTA ${params.genomes_base}/mm10/GRCm39.fa; a genome key's name need not be the assembly it selects, so confirm it is the one you intend. A genome name alone does not specify where reference files come from. Confirm the selected reference's paths and source in the pinned upstream/nextflow.config and upstream/conf/ before running. To supply your own reference, use e.g. --fasta; the reference_genome_options group in reference.md lists every reference option.

Resources

Resource requests follow the pipeline's configs and selected profiles. nf-core's resource labels often assume a server — a single step can request far more memory than a workstation has, and retry rules can increase requests. If a run fails with Process requirement exceeds available memory (or CPUs), cap every request, and every retry, at what this machine actually has:

bash
nfclaw run marsseq --input samplesheet.csv --outdir results -profile docker \
--limit-cpus 4 --limit-memory 15.GB

nfclaw turns those into Nextflow's process.resourceLimits and passes them as a -c config — the mechanism nf-core prescribes for exactly this (docs). Set them to the machine's real capacity. --limit-time DURATION also caps how long any one task may run: a task that needs longer is stopped, and so is every retry, so set it only as a deliberate ceiling, never as a guess at how long the analysis takes. The generated config is kept in <outdir>/provenance/, so commands.sh replays the run under the same ceiling.

Nextflow engine

This release declares nextflowVersion = '!>=23.04.0'.

To pin this release's declared minimum engine — useful when a newer Nextflow has incompatible config parsing:

bash
nfclaw run marsseq ... --nxf-ver 23.04.0

--nxf-ver is recorded in <outdir>/provenance/, so the replay uses the same engine. See known-issues.

Nextflow 23.04.0 predates process.resourceLimits (24.04.0), so --limit-* cannot be combined with this pin — nfclaw refuses it rather than run without the ceiling; cap resources with the release's own --max-cpus, --max-memory, --max-time instead.

Demo

bash
nfclaw run marsseq --demo --outdir results # adds the upstream test profile (-profile test,docker)
<!-- Generated from nf-core/marsseq@b02ede773092f8a8a5999400acda6894d51b4d26. Do not edit by hand. -->

Samplesheet

A CSV with this header (the columns the schema requires). Fill each value per the constraints below.

samplesheet.csv header
batch,fastq_1,fastq_2,amp_batches,seq_batches,well_cells
ColumnTypeRequiredAllowed / constraints
batchstringrequiredmatches ^\S+$
fastq_1stringrequiredmatches ^\S+\.f(ast)?q\.gz$
fastq_2stringrequired—
amp_batchesstringrequiredmatches ^\S+.xlsx$
seq_batchesstringrequiredmatches ^\S+.xlsx$
well_cellsstringrequiredmatches ^\S+.xlsx$

Required parameters

--inputstring (file path)

Path to comma-separated file containing information about the samples in the experiment.

Constraint · matches ^\S+\.csv$

--outdirstring (directory path)

The output directory where the results will be saved. You have to use absolute paths to storage on Cloud infrastructure.

Parameter explorer

38 parameters · 7 groups

Every parameter from the pinned nextflow_schema.json. nfclaw checks explicit values before launch; complex rules use the pinned pipeline's runtime validation. Search, filter by group, and expand any parameter for its default, allowed values and constraints.

14 parameters · 24 hidden

Generic options1

Custom MultiQC yaml file containing HTML including a methods description.

Input Output options5

Specifies which analysis type for the pipeline - either build references or analyse data

Email address for completion summary.

Path to comma-separated file containing information about the samples in the experiment.

MultiQC report title. Printed as page header, used for filename if not otherwise specified.

The output directory where the results will be saved. You have to use absolute paths to storage on Cloud infrastructure.

Reference Genome options5

Path to BOWTIE2 index.

Path to FASTA genome file.

Name of Genomes reference.

Path to GTF annotation file.

Path to STAR index.

Rna Velocity2

Read length required for STAR aligner

Run RNA velocity

Skip Steps1

Skip QC steps

Outputs

Results land in --outdir; the files and directory layout depend on the selected workflow, parameters and publication settings. Run metadata is normally placed in <outdir>/pipeline_info/ (execution report, software versions), when those outputs are enabled. The pinned tree includes MultiQC support; a report is produced only when its workflow step runs. nfclaw run also writes <outdir>/provenance/ with the exact params file and the run log, <outdir>/provenance/logs/run.log — the whole launch, whose last line states the outcome (Nextflow's own log is <outdir>/.nextflow.log); unless --no-provenance it adds a run manifest (pinned version, commit and exact command), input/output SHA-256 checksums, and a replayable commands.sh. The exact output files and directory layout for this release are documented upstream: github.com/nf-core/marsseq/blob/1.0.3/docs/output.md Check a run — in the foreground or the background — with nfclaw status <outdir>: success, still running, how it ended (with the error), or stopped without an outcome; exit 0 success, 3 running, 1 otherwise.