callingcards
nf-core/callingcards
An automated processing pipeline for mammalian bulk calling cards experiments
Key tools
Run it
nfclaw run callingcards --input samplesheet.csv --outdir results --datatype <datatype> -profile dockernextflow run pipelines/callingcards/upstream -profile docker --input samplesheet.csv --outdir results --datatype <datatype>nfclaw run callingcards --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+\.f(ast)?q\.gz$ | |
fastq_2 | string (file path) | no | ||
barcode_details | string (file path) | yes | matches ^\S+\.json$ |
--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,barcode_detailsAny of the optional columns above may be appended to the header when your data needs them: fastq_2.
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); barcode_details from files matching their patterns, by sample name. Set other columns with --sheet-set COLUMN=VALUE. Preview it with --check; a run records it in <outdir>/provenance/ for replay.
Reference genome
No reference genome is set by default: supply your own reference. 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. Set --igenomes-ignore true to disable the lookup entirely.
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 callingcards --input samplesheet.csv --outdir results --datatype <datatype> -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 = '!>=23.04.0'.
To pin this release's declared minimum engine — useful when a newer Nextflow has incompatible config parsing:
nfclaw run callingcards ... --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
nfclaw run callingcards --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,barcode_details| Column | Type | Required | Allowed / constraints |
|---|---|---|---|
sample | string | required | matches ^\S+$ |
fastq_1 | string (file path) | required | matches ^\S+\.f(ast)?q\.gz$ |
fastq_2 | string (file path) | optional | — |
barcode_details | string (file path) | required | matches ^\S+\.json$ |
Required parameters
--datatypestringThis determines which workflow to run based on the organism and method from which the data originates. Current options are 'yeast' and 'mammals'
yeastmammals--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
53 parameters · 9 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.
16 parameters · 37 hidden
Alignment options1
Choose one of the configured aligners. Defaults to bwamem2.
Generic options1
Custom MultiQC yaml file containing HTML including a methods description.
Hops Counting options1
Values with less than or equal to this mapq value will not be counted as transpositions. Defaults to 10
Input Output options3
This determines which workflow to run based on the organism and method from which the data originates. Current options are 'yeast' and 'mammals'
Path to comma-separated file containing information about the samples in the experiment.
The output directory where the results will be saved. You have to use absolute paths to storage on Cloud infrastructure.
Read Processing options5
UMITools compliant read 1 barcode pattern. See UMITools documentation
If reads are single_end, this option allows the user to crop the R1 read. This occurs after trimming
UMITools compliant read 2 barcode pattern. See UMITools documentation
split_fastq_by_size or split_fastq_by_part may be set, but not both at the same time. These parameters control how many parts the input fastq files are split into for parallel processing on a cluster. See seqkit split2 for more information. By default, split_fastq_by_part is set to 10, which will split every fastq file into 10 parts. If you wish to use split_fastq_by_size, set split_fastq_by_part to null to nullify the default value.
split_fastq_by_size or split_fastq_by_part may be set, but not both at the same time. These parameters control how many parts the input fastq files are split into for parallel processing on a cluster. See seqkit split2 for more information. By default, split_fastq_by_part is set to 10, which will split every fastq file into 10 parts. If you wish to use split_fastq_by_size, set split_fastq_by_part to null to nullify the default value.
Reference Genome options5
Additional sequences which will be appended to the genomic fasta file after masking
Path to FASTA genome file.
Name of iGenomes reference.
Path to GTF annotation file.
A bed file which specifies regions to hard mask in genome fasta
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/callingcards/blob/1.0.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.