307 lines
10 KiB
JSON
307 lines
10 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema",
|
|
"$id": "https://raw.githubusercontent.com/epi2me-labs/wf-transcriptomes/master/nextflow_schema.json",
|
|
"title": "epi2me-labs/wf-transcriptomes",
|
|
"workflow_title": "Transcriptomes",
|
|
"description": "Long-read transcriptome analysis using bambu with optional SQANTI3 QC, DESeq2, and DEXSeq.",
|
|
"demo_url": "https://ont-exd-int-s3-euwst1-epi2me-labs.s3.amazonaws.com/wf-transcriptomes/wf-transcriptomes-demo.tar.gz",
|
|
"aws_demo_url": "https://ont-exd-int-s3-euwst1-epi2me-labs.s3.amazonaws.com/wf-transcriptomes/wf-transcriptomes-demo/aws.nextflow.config",
|
|
"url": "https://github.com/epi2me-labs/wf-transcriptomes",
|
|
"type": "object",
|
|
"definitions": {
|
|
"input_options": {
|
|
"title": "Input Options",
|
|
"type": "object",
|
|
"description": "Parameters for ingesting read data.",
|
|
"properties": {
|
|
"fastq": {
|
|
"type": "string",
|
|
"format": "path",
|
|
"title": "FASTQ",
|
|
"demo_data": "${projectDir}/test_data/smoke/reads.fastq",
|
|
"description": "FASTQ reads to analyse.",
|
|
"help_text": "You can provide a single FASTQ, a folder of FASTQs, or a multiplexed folder containing one sub-folder per sample or barcode."
|
|
},
|
|
"bam": {
|
|
"type": "string",
|
|
"format": "path",
|
|
"description": "BAM or uBAM reads to analyse.",
|
|
"help_text": "You can provide a single BAM or uBAM, a folder of BAMs, or a multiplexed folder containing one sub-folder per sample or barcode."
|
|
},
|
|
"analyse_unclassified": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Include unclassified reads from multiplexed input directories."
|
|
},
|
|
"analyse_fail": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Include fail reads from multiplexed input directories."
|
|
},
|
|
"fastq_chunk": {
|
|
"type": "integer",
|
|
"description": "Maximum number of reads per ingress chunk.",
|
|
"help_text": "Useful mainly for testing or for splitting very large inputs into smaller pieces."
|
|
}
|
|
},
|
|
"allOf": [
|
|
{
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"fastq"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"bam"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"reference_options": {
|
|
"title": "Reference Options",
|
|
"type": "object",
|
|
"description": "Reference files and transcriptome construction mode.",
|
|
"properties": {
|
|
"ref_genome": {
|
|
"type": "string",
|
|
"format": "file-path",
|
|
"title": "Reference genome",
|
|
"demo_data": "${projectDir}/test_data/smoke/reference.fa",
|
|
"description": "Reference genome FASTA.",
|
|
"help_text": "Required in both discover and fixed_annotation modes."
|
|
},
|
|
"ref_annotation": {
|
|
"type": "string",
|
|
"format": "file-path",
|
|
"title": "Reference annotation",
|
|
"demo_data": "${projectDir}/test_data/smoke/annotation.gtf",
|
|
"description": "Reference transcript annotation in GTF or GFF format.",
|
|
"help_text": "Required in both discover and fixed_annotation modes."
|
|
},
|
|
"transcriptome_mode": {
|
|
"type": "string",
|
|
"default": "discover",
|
|
"enum": [
|
|
"discover",
|
|
"fixed_annotation"
|
|
],
|
|
"description": "How bambu should prepare the transcriptome model.",
|
|
"help_text": "Use discover for reference-guided transcript discovery and quantification, or fixed_annotation for quantification only against the supplied annotation."
|
|
},
|
|
"direct_rna": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Set this for direct RNA sequencing libraries."
|
|
}
|
|
},
|
|
"required": [
|
|
"ref_genome",
|
|
"ref_annotation",
|
|
"transcriptome_mode"
|
|
]
|
|
},
|
|
"sample_options": {
|
|
"title": "Sample Options",
|
|
"type": "object",
|
|
"description": "Parameters that control sample naming and experimental design.",
|
|
"properties": {
|
|
"sample_sheet": {
|
|
"type": "string",
|
|
"format": "file-path",
|
|
"title": "Sample sheet",
|
|
"demo_data": "${projectDir}/test_data/smoke/sample_sheet.csv",
|
|
"description": "CSV file describing barcodes, aliases, and optional experimental design columns.",
|
|
"help_text": "For multiplexed runs, the sample sheet should contain both barcode and alias. For differential analysis it must also contain alias, the condition column, and any extra columns named in `--covariates`."
|
|
},
|
|
"sample": {
|
|
"type": "string",
|
|
"description": "Single sample name for singleplexed input or to restrict multiplexed analysis to one sample."
|
|
}
|
|
}
|
|
},
|
|
"analysis_options": {
|
|
"title": "Analysis Options",
|
|
"type": "object",
|
|
"description": "Parameters controlling DGE and DTU analyses.",
|
|
"properties": {
|
|
"de_analysis": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Run differential gene expression and differential transcript usage analyses."
|
|
},
|
|
"condition_column": {
|
|
"type": "string",
|
|
"default": "condition",
|
|
"description": "Main comparison column in the sample sheet."
|
|
},
|
|
"covariates": {
|
|
"type": "string",
|
|
"description": "Comma-separated extra sample-sheet columns to adjust for, for example batch.",
|
|
"help_text": "Each listed name must exist as a column in the sample sheet."
|
|
},
|
|
"reference_level": {
|
|
"type": "string",
|
|
"description": "Baseline group for the main comparison column.",
|
|
"help_text": "If omitted, the workflow will use control when that level exists."
|
|
}
|
|
}
|
|
},
|
|
"output_options": {
|
|
"title": "Output Options",
|
|
"type": "object",
|
|
"description": "Parameters controlling workflow outputs.",
|
|
"properties": {
|
|
"out_dir": {
|
|
"type": "string",
|
|
"format": "directory-path",
|
|
"default": "output",
|
|
"description": "Directory for user-facing workflow outputs."
|
|
},
|
|
"igv": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Generate an IGV configuration file for the aligned BAM outputs."
|
|
}
|
|
}
|
|
},
|
|
"advanced_options": {
|
|
"title": "Advanced Options",
|
|
"type": "object",
|
|
"description": "Performance tuning and tool-specific advanced parameters.",
|
|
"properties": {
|
|
"threads": {
|
|
"type": "integer",
|
|
"default": 4,
|
|
"description": "Thread count to use for the core workflow processes."
|
|
},
|
|
"mod_codes": {
|
|
"type": "string",
|
|
"description": "Comma-separated modified base codes to pass to modkit pileup.",
|
|
"help_text": "Provide values accepted by `modkit pileup --modified-bases`, for example `A:a,C:m`. If omitted, the workflow infers `primary_base:mod_code` pairs from the BAM with `modkit modbam check-tags`."
|
|
},
|
|
"minimap2_index_opts": {
|
|
"type": "string",
|
|
"default": "",
|
|
"hidden": true,
|
|
"description": "Legacy compatibility parameter forwarded to minimap2 index generation."
|
|
},
|
|
"minimap2_opts": {
|
|
"type": "string",
|
|
"default": "",
|
|
"description": "Extra command-line options to pass to minimap2."
|
|
},
|
|
"ndr": {
|
|
"type": "number",
|
|
"description": "Optional bambu novel discovery rate override."
|
|
},
|
|
"skip_sqanti": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Skip SQANTI3 transcript classification and QC."
|
|
},
|
|
"sqanti_skip_orf": {
|
|
"type": "boolean",
|
|
"default": true,
|
|
"description": "Skip ORF prediction during SQANTI3 QC."
|
|
},
|
|
"sqanti_extra_args": {
|
|
"type": "string",
|
|
"default": "",
|
|
"description": "Extra command-line options to pass to SQANTI3."
|
|
}
|
|
}
|
|
},
|
|
"misc": {
|
|
"title": "Miscellaneous Options",
|
|
"type": "object",
|
|
"description": "Everything else.",
|
|
"default": "",
|
|
"properties": {
|
|
"disable_ping": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Enable to prevent sending a workflow ping.",
|
|
"overrides": {
|
|
"epi2mecloud": {
|
|
"hidden": true
|
|
}
|
|
}
|
|
},
|
|
"help": {
|
|
"type": "boolean",
|
|
"description": "Display help text.",
|
|
"fa_icon": "fas fa-question-circle",
|
|
"default": false,
|
|
"hidden": true
|
|
},
|
|
"version": {
|
|
"type": "boolean",
|
|
"description": "Display version and exit.",
|
|
"fa_icon": "fas fa-question-circle",
|
|
"default": false,
|
|
"hidden": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"allOf": [
|
|
{
|
|
"$ref": "#/definitions/input_options"
|
|
},
|
|
{
|
|
"$ref": "#/definitions/reference_options"
|
|
},
|
|
{
|
|
"$ref": "#/definitions/sample_options"
|
|
},
|
|
{
|
|
"$ref": "#/definitions/analysis_options"
|
|
},
|
|
{
|
|
"$ref": "#/definitions/output_options"
|
|
},
|
|
{
|
|
"$ref": "#/definitions/advanced_options"
|
|
},
|
|
{
|
|
"$ref": "#/definitions/misc"
|
|
}
|
|
],
|
|
"properties": {
|
|
"aws_image_prefix": {
|
|
"type": "string",
|
|
"hidden": true
|
|
},
|
|
"aws_queue": {
|
|
"type": "string",
|
|
"hidden": true
|
|
},
|
|
"monochrome_logs": {
|
|
"type": "boolean"
|
|
},
|
|
"validate_params": {
|
|
"type": "boolean",
|
|
"default": true
|
|
},
|
|
"show_hidden_params": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"resources": {
|
|
"recommended": {
|
|
"cpus": 16,
|
|
"memory": "64GB"
|
|
},
|
|
"minimum": {
|
|
"cpus": 8,
|
|
"memory": "32GB"
|
|
},
|
|
"run_time": "Varies with read depth and sample count; expect a small single-sample run to finish in under 30 minutes with the recommended resources.",
|
|
"arm_support": false
|
|
}
|
|
}
|