scrnaseq
nf-core/scrnaseq
Pipeline for processing 10x Genomics single cell rnaseq data
Key tools
Run it
nfclaw run scrnaseq --input samplesheet.csv --outdir results -profile dockernextflow run pipelines/scrnaseq/upstream -profile docker --input samplesheet.csv --outdir resultsnfclaw run scrnaseq --demo --outdir results # adds the upstream test profile (-profile test,docker)Inputs
| column | type | required | allowed values | constraints |
|---|---|---|---|---|
sample | string | yes | matches ^\S+$ | |
fastq_1 | string (file path) | yes | matches ^([\S\s]*\/)?[^\s\/]+\.f(ast)?q\.gz$ | |
fastq_2 | string (file path) | yes | matches ^([\S\s]*\/)?[^\s\/]+\.f(ast)?q\.gz$ | |
fastq_barcode | string | no | ||
expected_cells | integer | no | ||
seq_center | string | no | ||
sample_type | string | no | atac, gex | |
feature_type | string | no | gex, vdj, ab, crispr, cmo |
--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):
sample,fastq_1,fastq_2Any of the optional columns above may be appended to the header when your data needs them: fastq_barcode, expected_cells, seq_center, sample_type, feature_type.
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: sample from file names; 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 other columns with --sheet-set COLUMN=VALUE. Preview it with --check; a run records it in <outdir>/provenance/ for replay.
Mandatory arguments
The schema groups these under Mandatory arguments — the pipeline authors' own label. They are absent from the required list above only because each carries a default, so nf-schema will not stop a run that omits them — but the pipeline itself can reject the default at runtime. Set them deliberately.
| parameter | type | default | allowed values | constraints | description |
|---|---|---|---|---|---|
--aligner | string | simpleaf | kallisto, star, simpleaf, cellranger, cellrangerarc, cellrangermulti | Name of the tool to use for scRNA (pseudo-) alignment. | |
--barcode-whitelist | string (file path) | If not using the 10X Genomics platform, a custom barcode whitelist can be used with --barcode_whitelist. | |||
--protocol | string | auto | The protocol that was used to generate the single cell data, e.g. 10x Genomics v2 Chemistry. Can be 'auto' (cellranger only), '10XV1', '10XV2', '10XV3', '10XV4', or any other protocol string that will get directly passed the respective aligner. |
Reference genome
No reference genome is set by default: supply your own reference. The schema declares AWS iGenomes at s3://ngi-igenomes/igenomes/; selecting --genome <id> uses the paths in the pipeline's reference configuration. Access to that remote source is required. To supply your own reference, use e.g. --fasta; the reference_genome_options group in reference.md lists every reference option. Set --igenomes-ignore true to disable the lookup entirely. Confirm the selected reference's paths and source in the pinned upstream/nextflow.config and upstream/conf/ before running.
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:
nfclaw run scrnaseq --input samplesheet.csv --outdir results -profile docker \ --limit-cpus 4 --limit-memory 15.GBnfclaw 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 = '!>=25.10.4'.
To pin this release's declared minimum engine — useful when a newer Nextflow has incompatible config parsing:
nfclaw run scrnaseq ... --nxf-ver 25.10.4--nxf-ver is recorded in <outdir>/provenance/, so the replay uses the same engine. See known-issues.
Demo
nfclaw run scrnaseq --demo --outdir results # adds the upstream test profile (-profile test,docker)Samplesheet
A CSV with this header (the columns the schema requires). Fill each value per the constraints below; optional columns from the table may be appended.
sample,fastq_1,fastq_2| Column | Type | Required | Allowed / constraints |
|---|---|---|---|
sample | string | required | matches ^\S+$ |
fastq_1 | string (file path) | required | matches ^([\S\s]*\/)?[^\s\/]+\.f(ast)?q\.gz$ |
fastq_2 | string (file path) | required | matches ^([\S\s]*\/)?[^\s\/]+\.f(ast)?q\.gz$ |
fastq_barcode | string | optional | — |
expected_cells | integer | optional | — |
seq_center | string | optional | — |
sample_type | string | optional | atacgex |
feature_type | string | optional | gexvdjabcrisprcmo |
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
69 parameters · 12 groupsEvery 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.
50 parameters · 19 hidden
Cellranger Multi options10
Additional samplesheet to provide information about multiplexed samples. See the 'Usage' section for more details.
Specify a pre-built Cell Ranger index for VDJ analysis.
Provide a reference file for feature barcoding (e.g. antibody measurements). Please refer to the Cell Ranger Feature Reference documentation for more details.
This is only necessary to override Cell Ranger's default cell calling and tag calling steps. In most cases, you need to only use the cellranger_multi_barcodes parameter. Please refer to the 10x documentation for more information about this file.
Provide a Cell Multiplexing Oligo (CMO) description file when working with multiplexed samples. This is only necessary if you with to override Cell Ranger's default CMO-set. Please refer to the 10x documentation about CMO references for more details.
Provide a probe set for fixed RNA-seq profiling (used with FFPE samples). Please refer to the 10x documentation about probesets for more details.
Reference version (e.g. GRCh38, GRCm39). Required if gex_frna_probe_set is used and cellranger_index is not set. Must match the genome version in the gex_frna_probe_set file.
Provide a panel description for targeted sequencing.
Skip mkvdjref if not using VDJ data with cellranger/multi
This argument takes a .txt file containing primer sequences that were used to enrich cDNA for V(D)J sequences. This is only necessary if you with to override Cell Ranger's defaults.
Cellranger options2
Specify a pre-calculated cellranger index. Readily prepared indexes can be obtained from the 10x Genomics website. Provide the base directory of the index (e.g., '/PATH/TO/10X_REF/refdata-gex-GRCh38-2024-A/')
Should it skip the automatic renaming included in cellranger-related modules?
Cellrangerarc options3
Specify a config file to create the cellranger-arc index.
Specify the genome reference name used in the config file to create a cellranger-arc index.
Specify a motif file to create a cellranger-arc index. Can be taken, e.g., from the JASPAR database.
Generic options4
Display the help message.
Display the full detailed help message.
Custom MultiQC yaml file containing HTML including a methods description.
Display hidden parameters in the help message (only works when --help or --help_full are provided).
Input Output options4
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.
Kallisto Bus options4
Specify a path to the precomputed Kallisto index.
Specify a path to the cDNA transcripts-to-capture.
Specify a path to the intron transcripts-to-capture.
Type of workflow. Use nac for an index type that can quantify nascent and mature RNA. Use lamanno for RNA velocity based on La Manno et al. 2018 logic. (default: standard)
Mandatory Arguments3
Name of the tool to use for scRNA (pseudo-) alignment.
If not using the 10X Genomics platform, a custom barcode whitelist can be used with --barcode_whitelist.
The protocol that was used to generate the single cell data, e.g. 10x Genomics v2 Chemistry. Can be 'auto' (cellranger only), '10XV1', '10XV2', '10XV3', '10XV4', or any other protocol string that will get directly passed the respective aligner.
Reference Genome options7
Path to FASTA genome file.
Name of iGenomes reference.
Reference GTF annotation file
Specify this parameter to save the intermediate alignment files (STAR, CellRanger) to the results.
Specify this parameter to save the indices created (STAR, Kallisto, Simpleaf) to the results.
A cDNA FASTA file
Path to transcript to gene mapping file. This allows the specification of a transcript to gene mapping file for Kallisto/BUS and Alevin-fry.
Simpleaf options4
Number of partitions (max barcodes) for QCatch's empty_drops step.
Enable doublet detection and removal using Scrublet via QCatch.
Path to pre-built Simpleaf index.
UMI resolution strategy to deduplicate UMIs.
Skip Tools5
Skip cellbender empty drops filter subworkflow
Skip FastQC
Skip MultiQC Report
Skip qcatch QC for simpleaf aligner
Starsolo options4
Name of sequencing center for BAM read group tag.
Quantification type of different transcriptomic feature. Use GeneFull on pre-mRNA count for single-nucleus RNA-seq reads. Use Gene Velocyto to generate RNA velocity matrix.
Ignore the SJDB GTF file.
Specify a path to the precomputed STAR index.
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. --skip-multiqc true disables that report. 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/scrnaseq/blob/4.2.0/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.