-
Notifications
You must be signed in to change notification settings - Fork 1
/
nextflow_schema.json
936 lines (936 loc) · 49.4 KB
/
nextflow_schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/Joon-Klaps/viralgenie/master/nextflow_schema.json",
"title": "Viralgenie pipeline parameters",
"description": "A pipeline to reconstruct consensus genomes and identify intrahost variants from metagenomic sequencing data or enriched based sequencing data like hybrid capture.",
"type": "object",
"$defs": {
"input_output_options": {
"title": "Input/output options",
"type": "object",
"fa_icon": "fas fa-terminal",
"description": "Define where the pipeline should find input data and save output data.",
"required": ["input", "outdir"],
"properties": {
"input": {
"type": "string",
"format": "file-path",
"schema": "assets/schemas/input.json",
"exists": true,
"mimetype": "text/csv",
"pattern": "^\\S+\\.csv$",
"description": "Path to comma-separated file containing information about the samples in the experiment.",
"help_text": "You will need to create a design file with information about the samples in your experiment before running the pipeline. Use this parameter to specify its location. It has to be a comma-separated file with 3 columns, and a header row. See [usage docs](https://joon-klaps.github.io/viralgenie/latest/usage/#input).",
"fa_icon": "fas fa-file-csv"
},
"outdir": {
"type": "string",
"format": "directory-path",
"description": "The output directory where the results will be saved. You have to use absolute paths to storage on Cloud infrastructure.",
"fa_icon": "fas fa-folder-open"
},
"metadata": {
"type": "string",
"fa_icon": "fas fa-file-csv",
"description": "Sample metadata that is included in the multiqc report",
"pattern": "^\\S+\\.[tc]sv$"
},
"email": {
"type": "string",
"description": "Email address for completion summary.",
"fa_icon": "fas fa-envelope",
"help_text": "Set this parameter to your e-mail address to get a summary e-mail with details of the run sent to you when the workflow exits. If set in your user config file (`~/.nextflow/config`) then you don't need to specify this on the command line for every run.",
"pattern": "^([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\\.([a-zA-Z]{2,5})$"
}
}
},
"preprocessing_options": {
"title": "Preprocessing options",
"type": "object",
"description": "Options related to the trimming, low complexity and host removal steps of the reads",
"default": "",
"properties": {
"skip_preprocessing": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip read preprocessing and use input reads for downstream analysis"
},
"skip_fastqc": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip read quality statistics summary tool 'fastqc'"
},
"save_final_reads": {
"type": "boolean",
"default": true,
"fa_icon": "fas fa-copy",
"description": "Save reads after the final preprocessing step"
},
"save_intermediate_reads": {
"type": "boolean",
"fa_icon": "fas fa-copy",
"description": "Save reads after every preprocessing step"
},
"with_umi": {
"type": "boolean",
"description": "With or without umi detection",
"fa_icon": "fas fa-align-center"
},
"skip_umi_extract": {
"type": "boolean",
"default": true,
"fa_icon": "fas fa-forward",
"description": "With or without umi extraction"
},
"umi_deduplicate": {
"type": "string",
"default": "read",
"fa_icon": "fas fa-toolbox",
"description": "Specify at what level UMI deduplication should occur.",
"enum": ["read", "mapping", "both"]
},
"humid_mismatches": {
"type": "integer",
"default": 1,
"fa_icon": "fas fa-sort-numeric-down",
"description": "Specify the maximum number of mismatches between reads for them to still be considered neighbors."
},
"humid_strategy": {
"type": "string",
"default": "directional",
"fa_icon": "fas fa-project-diagram",
"description": "Specify the strategy for umi-deduplication directional vs cluster",
"enum": ["directional", "cluster"]
},
"umitools_dedup_strategy": {
"type": "string",
"fa_icon": "fas fa-project-diagram",
"description": "Specify the strategy or method for umi-tools deduplication on mapping level",
"enum": ["directional", "unique", "adjacency", "cluster", "percentile"],
"default": "cluster"
},
"umi_discard_read": {
"type": "integer",
"default": 0,
"fa_icon": "far fa-trash-alt",
"description": "Discard R1 / R2 if required 0, meaning not to discard"
},
"trim_tool": {
"type": "string",
"default": "fastp",
"description": "The used trimming tool",
"enum": ["fastp", "trimmomatic"],
"fa_icon": "fas fa-filter"
},
"skip_trimming": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip read trimming"
},
"fastp_deduplicate": {
"type": "boolean",
"fa_icon": "fas fa-filter",
"description": "Use Fastp's deduplicate option"
},
"fastp_dedup_accuracy": {
"type": "number",
"fa_icon": "fas fa-filter",
"description": "Define the accuracy used for hashes while deduplicating with faspt"
},
"adapter_fasta": {
"type": "string",
"description": "Fasta file of adapters",
"fa_icon": "fas fa-file-alt"
},
"save_trimmed_fail": {
"type": "boolean",
"fa_icon": "fas fa-file-download",
"description": "Specify true to save files that failed to pass trimming thresholds ending in `*.fail.fastq.gz`"
},
"save_merged": {
"type": "boolean",
"fa_icon": "fas fa-file-download",
"description": "Specify true to save all merged reads to the a file ending in `*.merged.fastq.gz`"
},
"min_trimmed_reads": {
"type": "integer",
"default": 1,
"description": "Inputs with fewer than this reads will be filtered out of the \"reads\" output channel",
"fa_icon": "fas fa-compress-alt"
},
"skip_complexity_filtering": {
"type": "boolean",
"default": true,
"fa_icon": "fas fa-forward",
"description": "Skip filtering of low complexity regions in reads",
"help_text": "Low-complexity sequences are defined as having commonly found stretches of nucleotides with limited information content (e.g. the dinucleotide repeat CACACACACA). Such sequences can produce a large number of high-scoring but biologically insignificant results in database searches"
},
"decomplexifier": {
"type": "string",
"default": "prinseq",
"fa_icon": "fas fa-filter",
"description": "Specify the decomplexifier to use, bbduk or prinseq",
"enum": ["bbduk", "prinseq"]
},
"contaminants": {
"type": "string",
"description": "Reference files containing adapter and/or contaminant sequences for sequence kmer matching (used by bbduk)",
"fa_icon": "fas fa-filter"
},
"skip_hostremoval": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip the removal of host read sequences"
},
"host_k2_db": {
"type": "string",
"default": "s3://ngi-igenomes/test-data/viralrecon/kraken2_human.tar.gz",
"fa_icon": "fas fa-database",
"description": "Kraken2 database used to remove host and conamination"
},
"host_k2_library": {
"type": "string",
"default": "human",
"fa_icon": "fab fa-gitkraken",
"description": "Kraken2 library(s) required to remove host and contamination",
"help_text": "Only used when no host kraken2 database is specified."
},
"skip_host_fastqc": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip the fastqc step after host & contaminants were removed"
}
},
"fa_icon": "fas fa-bahai"
},
"metagenomic_diveristy": {
"title": "Metagenomic diveristy",
"type": "object",
"description": "Parameters used to determine the metagenomic diversity of the sample",
"default": "",
"properties": {
"skip_read_classification": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip determining the metagenomic diversity of the sample"
},
"read_classifiers": {
"type": "string",
"default": "kraken2,kaiju",
"fa_icon": "fab fa-gitkraken",
"description": "Specify the taxonomic read classifiers, choices are 'kaiju,kraken2'",
"pattern": "^(kaiju|kraken2|bracken)(?:,(kaiju|kraken2|bracken)){0,2}$"
},
"save_databases": {
"type": "boolean",
"fa_icon": "fas fa-cloud-download-alt",
"description": "Save the used databases"
},
"kraken2_db": {
"type": "string",
"default": "https://genome-idx.s3.amazonaws.com/kraken/k2_viral_20230314.tar.gz",
"fa_icon": "fas fa-database",
"format": "path",
"description": "Location of the Kraken2 database"
},
"kraken2_save_reads": {
"type": "boolean",
"fa_icon": "fab fa-gitkraken",
"description": "Save classified and unclassified reads as fastq files"
},
"kraken2_save_readclassification": {
"type": "boolean",
"fa_icon": "fab fa-gitkraken",
"description": "Save summary overview of read classifications in a txt file"
},
"kraken2_save_minimizers": {
"type": "boolean",
"fa_icon": "fab fa-gitkraken",
"description": "Save kraken2's used minimizers"
},
"bracken_db": {
"type": "string",
"fa_icon": "fas fa-database",
"format": "path",
"description": "Location of bracken database",
"default": "https://genome-idx.s3.amazonaws.com/kraken/k2_viral_20230314.tar.gz"
},
"kaiju_db": {
"type": "string",
"default": "https://kaiju-idx.s3.eu-central-1.amazonaws.com/2023/kaiju_db_rvdb_2023-05-26.tgz",
"format": "path",
"fa_icon": "fas fa-database",
"description": "Location of Kaiju database"
},
"kaiju_taxon_rank": {
"type": "string",
"default": "species",
"fa_icon": "fas fa-align-justify",
"description": "Level of taxa rank that needs to be determined",
"enum": ["superkingdom", "phylum", "class", "order", "family", "genus", "species"]
}
},
"fa_icon": "fas fa-chart-bar"
},
"assembly": {
"title": "Assembly",
"type": "object",
"description": "Parameters relating to the used assembly methods",
"default": "",
"properties": {
"skip_assembly": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip de novo assembly of reads"
},
"assemblers": {
"type": "string",
"default": "spades,megahit",
"fa_icon": "fas fa-bezier-curve",
"description": "The specified tools for denovo assembly, multiple options are possible",
"pattern": "^(trinity|spades|megahit)(?:,(trinity|spades|megahit)){0,2}$"
},
"spades_mode": {
"type": "string",
"default": "rnaviral",
"fa_icon": "fas fa-bezier-curve",
"description": "specific SPAdes mode to run",
"enum": [
"rnaviral",
"corona",
"metaviral",
"meta",
"metaplasmid",
"plasmid",
"isolate",
"rna",
"bio"
]
},
"spades_hmm": {
"type": "string",
"fa_icon": "fas fa-file",
"description": "File or directory with amino acid HMMs for Spades HMM-guided mode."
},
"spades_yml": {
"type": "string",
"hidden": true,
"fa_icon": "fas fa-file",
"description": "Path to yml file containing read information.",
"help_text": "The raw FASTQ files listed in this YAML file MUST be supplied to the respective illumina/pacbio/nanopore input channel(s) _in addition_ to this YML. File entries in this yml must contain only the file name and no paths."
},
"assembler_patterns": {
"type": "string",
"description": "Regex pattern to identify contigs that have been made by the assemblers",
"fa_icon": "fab fa-behance"
},
"skip_contig_prinseq": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip the filtering of low complexity contigs with prinseq"
},
"skip_sspace_basic": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip the contig extension with sspace_basic"
},
"read_distance": {
"type": "integer",
"default": 350,
"fa_icon": "fas fa-arrows-alt-h",
"description": "Specify the mean distance between the paired reads",
"minimum": 1
},
"read_distance_sd": {
"type": "number",
"default": 0.75,
"fa_icon": "fas fa-arrows-alt-h",
"description": "Specify the a deviation of the mean distance that is allowed.",
"minimum": 0.01,
"maximum": 1,
"help_text": "For instance, a mean of 200 and a sd of 0.75. This means that any pair having a distance between 150 and 250 is allowed."
},
"read_orientation": {
"type": "string",
"default": "FR",
"fa_icon": "fas fa-exchange-alt",
"description": "Specify the read orientation."
}
},
"fa_icon": "fas fa-bezier-curve"
},
"polishing": {
"title": "Polishing",
"type": "object",
"description": "Parameters relating to the refinement of denovo contigs",
"default": "",
"properties": {
"skip_polishing": {
"type": "boolean",
"description": "Skip the refinement/polishing of contigs through reference based scaffolding and read mapping",
"fa_icon": "fas fa-forward"
},
"save_intermediate_polishing": {
"type": "boolean",
"description": "Save intermediate polishing files",
"help_text": "There are multiple processes within the polishing subworkflow that might not contain relevant information ",
"fa_icon": "fas fa-file-download"
},
"reference_pool": {
"type": "string",
"default": "https://rvdb.dbi.udel.edu/download/C-RVDBvCurrent.fasta.gz",
"description": "Set of fasta sequences used as potential references for the contigs",
"fa_icon": "fas fa-database"
},
"skip_precluster": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip the preclustering of assemblies to facilitate downstream processing of assemblies"
},
"keep_unclassified": {
"type": "boolean",
"default": true,
"fa_icon": "fas fa-filter",
"description": "Keep the contigs that could not be classified with the taxonomic databases (`kaiju_db` & `kraken2_db`)",
"help_text": "Within the preclustering step, all contigs will get a taxonomic classification using the provided databases for the metagenomic tools. In some cases, the number of unclassified contigs, can be very large if the database is restrictive. This will result in large clusters in downstream processing that can take up a lot of resources despite not being a priority in some analyses. So set it to `True` if you want to keep unclassified contigs and set it to `False` if you don't want to keep them. "
},
"precluster_classifiers": {
"type": "string",
"default": "kraken2,kaiju",
"fa_icon": "fab fa-gitkraken",
"description": "Specify the metagenomic classifiers to use for contig taxonomy classification: 'kraken2,kaiju'",
"pattern": "^(kaiju|kraken2)(,(kaiju|kraken2))?$"
},
"precluster_merge_strategy": {
"type": "string",
"default": "lca",
"fa_icon": "far fa-object-ungroup",
"description": "Taxon conflict resolution mode, must be 1 (Kaiju), 2 (Kraken), lca, or lowest.",
"help_text": "The option -c determines the method of resolving conflicts in the taxonomic assignment for a read.\nPossible values are '1', '2', 'lca', 'lowest':\n '1' -> the taxon id from Kaiju is used.\n '2' -> the taxon id from Kraken is used.\n 'lca' -> the least common ancestor of the two taxon ids from both input files is used.\n 'lowest' -> the lower rank of the two taxa is used if they are within the same lineage. Otherwise the LCA is used.",
"enum": ["1", "2", "lca", "lowest"]
},
"precluster_simplification_level": {
"type": "string",
"description": "Level of taxonomic simplification",
"help_text": "The taxonomic classification of the contigs can be simplified to a certain level. This can be done by specifying the taxonomic rank to which the classification should be simplified.",
"enum": ["species", "genus", "family", "order", "class", "phylum", "kingdom", "superkingdom"],
"fa_icon": "fas fa-compress-alt"
},
"precluster_exclude_taxa": {
"type": "string",
"fa_icon": "fas fa-filter",
"description": "Hard constrain for taxa to exclude from the preclustering, if multiple given make sure to enclose with '\"' and separate with a space.",
"help_text": "The taxonomic classification of the contigs can be filtered. This can be done by specifying a list of taxa that should be excluded from the results.",
"pattern": "^[\\d +]+$"
},
"precluster_exclude_children": {
"type": "string",
"fa_icon": "fas fa-filter",
"description": "Taxon ids to exclude along with all their children from the preclustering, if multiple given make sure to enclose with '\"' and separate with a space.",
"help_text": "The taxonomic classification of the contigs can be filtered. This can be done by specifying a list of taxa that should be excluded along with all their children from the results.",
"pattern": "^[\\d +]+$"
},
"precluster_exclude_parents": {
"type": "string",
"fa_icon": "fas fa-filter",
"description": "Taxon ids to exclude along with all their parents from the preclustering, if multiple given make sure to enclose with '\"' and separate with a space.",
"help_text": "The taxonomic classification of the contigs can be filtered. This can be done by specifying a list of taxa that should be excluded along with all their parents from the results.",
"pattern": "^[\\d +]+$"
},
"precluster_include_children": {
"type": "string",
"fa_icon": "fas fa-filter",
"description": "Taxon ids to include along with all their children from the preclustering, if multiple given make sure to enclose with '\"' and separate with a space.",
"help_text": "The taxonomic classification of the contigs can be filtered. This can be done by specifying a list of taxa that should be included along with all their children from the results.",
"pattern": "^[\\d +]+$"
},
"precluster_include_parents": {
"type": "string",
"fa_icon": "fas fa-filter",
"description": "Taxon ids to include along with all their parents from the preclustering, if multiple given make sure to enclose with '\"' and separate with a space.",
"help_text": "The taxonomic classification of the contigs can be filtered. This can be done by specifying a list of taxa that should be included along with all their parents from the results.",
"pattern": "^[\\d +]+$"
},
"cluster_method": {
"type": "string",
"default": "cdhitest",
"description": "Cluster algorithm used for contigs",
"enum": ["cdhitest", "vsearch", "mmseqs-linclust", "mmseqs-cluster", "vrhyme", "mash", "diamond"],
"fa_icon": "fas fa-bezier-curve"
},
"mmseqs_cluster_mode": {
"type": "integer",
"default": 0,
"fa_icon": "fas fa-project-diagram",
"description": "Specify the algorithm to partition the network graph from mmseqs",
"help_text": "The Greedy Set cover (0) algorithm is an approximation for the NP-complete optimization problem called set cover.\nConnected component (1) uses transitive connection to cover more remote homologs.\nGreedy incremental (2) works analogous to CD-HIT clustering algorithm.",
"minimum": 0,
"maximum": 3
},
"network_clustering": {
"type": "string",
"default": "connected_components",
"fa_icon": "fas fa-bezier-curve",
"description": "(only with mash) Algorithm to partition the network.",
"enum": ["connected_components", "leiden"],
"help_text": "Mash creates a distance matrix that gets translated into a network of connectected nodes where the edges represent the similarity. This network is then split up using the specified method.\n\n - [leiden](https://leidenalg.readthedocs.io/en/stable/intro.html) algorithm: a hierarchical clustering algorithm, that recursively merges communities into single nodes by greedily optimizing the modularity\n - [connected_components] algorithm: a clustering algorithm that defines the largest possible communities where each node within a subset is reachable from every other node in the same subset via any edge .\n"
},
"skip_hybrid_consensus": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip creation of the hybrid consensus, instead keep the scaffold with ambiguous bases if the depth of scaffolds is not high enough."
},
"identity_threshold": {
"type": "number",
"default": 0.85,
"description": "Identity threshold value used in clustering algorithms",
"fa_icon": "fas fa-list-ol"
},
"min_contig_size": {
"type": "integer",
"default": 500,
"description": "Minimum allowed contig size",
"help_text": "Setting this to a low value will result in a large number of questionable contigs and an increase in computation time ",
"fa_icon": "fas fa-compress-alt"
},
"perc_reads_contig": {
"type": "integer",
"default": 5,
"description": "minimum cumulated sum of mapped read percentages of each member from a cluster group, set to 0 to disable",
"help_text": "Setting this variable will remove clusters that have a low cumulated sum of mapped read percentages. This can be used to remove clusters that have a low coverage and are likely to be false positives.",
"fa_icon": "fas fa-compress-alt",
"minimum": 0,
"maximum": 99
},
"max_contig_size": {
"type": "integer",
"default": 10000000,
"description": "Maximum allowed contig size",
"fa_icon": "fas fa-expand-alt"
},
"max_n_perc": {
"type": "integer",
"default": 50,
"fa_icon": "fas fa-expand-alt",
"description": "Define the maximum percentage of ambiguous bases in a contig",
"minimum": 0,
"maximum": 100
},
"skip_singleton_filtering": {
"type": "boolean",
"description": "Skip the filtering of contigs that did not cluster together with other contigs",
"help_text": "Setting this to true will cause the pipeline not to remove contigs that don't have similar contigs. Filtering settings can be further specified with `min_contig_size` and `max_n_100kbp`.",
"fa_icon": "fas fa-forward"
}
},
"fa_icon": "fas fa-hand-sparkles"
},
"iterative_consensus_refinement": {
"title": "Iterative consensus refinement",
"type": "object",
"description": "Define parameters for iterations to update denovo consensus using reference based improvements",
"default": "",
"fa_icon": "fas fa-circle-notch",
"properties": {
"skip_iterative_refinement": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Don't realign reads to consensus sequences and redefine the consensus through (multiple) iterations"
},
"iterative_refinement_cycles": {
"type": "integer",
"default": 2,
"fa_icon": "fas fa-list-ol",
"description": "number of iterations"
},
"intermediate_mapper": {
"type": "string",
"default": "bwamem2",
"fa_icon": "fas fa-align-center",
"enum": ["bwamem2", "bowtie2", "bwa"],
"description": "mapping tool used during iterations"
},
"intermediate_variant_caller": {
"type": "string",
"default": "ivar",
"fa_icon": "fas fa-layer-group",
"enum": ["ivar", "bcftools"],
"description": "variant caller used during iterations"
},
"call_intermediate_variants": {
"type": "boolean",
"fa_icon": "fas fa-align-center",
"description": "call variants during the iterations",
"help_text": "Will always be done when iterative consensus caller is bcftools"
},
"intermediate_consensus_caller": {
"type": "string",
"default": "bcftools",
"fa_icon": "fas fa-compress-alt",
"description": "consensus tool used for calling new consensus during iterations"
},
"intermediate_mapping_stats": {
"type": "boolean",
"fa_icon": "fas fa-info",
"description": "calculate summary statistics during iterations",
"default": true
}
}
},
"variant_analysis": {
"title": "Variant analysis",
"type": "object",
"description": "Parameters relating to the analysis of variants associated to contigs and scaffolds",
"default": "",
"properties": {
"skip_variant_calling": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip the analysis of variants for the external reference or contigs"
},
"mapper": {
"type": "string",
"default": "bwamem2",
"fa_icon": "fas fa-align-center",
"description": "Define which mapping tool needs to be used when mapping reads to reference",
"enum": ["bwamem2", "bowtie2", "bwa"]
},
"mapping_constrains": {
"type": "string",
"description": "Sequence to use as a mapping reference instead of the de novo contigs or scaffolds",
"fa_icon": "far fa-file-alt",
"schema": "assets/schemas/mapping_constrains.json"
},
"deduplicate": {
"type": "boolean",
"default": true,
"fa_icon": "fas fa-compress-alt",
"description": "deduplicate the reads",
"help_text": "If used with umi's, `umi tools` will be used to group and call consensus of each indiual read group. If not used with umi's use `PicardsMarkDuplicates`. "
},
"variant_caller": {
"type": "string",
"fa_icon": "fas fa-layer-group",
"default": "ivar",
"enum": ["ivar", "bcftools"],
"description": "Define the variant caller to use: 'ivar' or 'bcftools'"
},
"consensus_caller": {
"type": "string",
"default": "ivar",
"fa_icon": "fas fa-compress-alt",
"enum": ["ivar", "bcftools"],
"description": "consensus tool used for calling new consensus in final iteration"
},
"umi_separator": {
"type": "string",
"default": ":",
"fa_icon": "fas fa-arrows-alt-h",
"description": "UMI seperator in fastq header.",
"help_text": "If you have used an alternative method which does not separate the read id and UMI with a \u201c_\u201d, such as bcl2fastq which uses \u201c:\u201d, you can specify the separator with the option --umi_separator=<sep>, replacing <sep> with e.g \u201c:\u201d."
},
"mash_sketch_size": {
"type": "integer",
"default": 4000,
"fa_icon": "fas fa-expand-arrows-alt",
"description": "Specify the sketch size, the number of (non-redundant) min-hashes that are kept.",
"help_text": "Larger sketches will better represent the sequence, but at the cost of larger sketch files and longer comparison times."
},
"mash_sketch_kmer_size": {
"type": "integer",
"default": 15,
"fa_icon": "fas fa-expand-arrows-alt",
"description": "Specify the kmer size for mash to create their hashes",
"help_text": "larger k-mers will provide more specificity, while smaller k-mers will provide more sensitivity. Larger genomes will also require larger k-mers to avoid k-mers that are shared by chance"
},
"min_mapped_reads": {
"type": "integer",
"default": 200,
"fa_icon": "fas fa-align-center",
"description": "Define the minimum number of mapped reads in order to continue the variant and consensus calling",
"minimum": 1
},
"mapping_stats": {
"type": "boolean",
"default": true,
"fa_icon": "fas fa-info",
"description": "calculate summary statistics in final iteration"
},
"multiqc_comment_headers": {
"type": "string",
"default": "${projectDir}/assets/mqc_comment",
"fa_icon": "fas fa-heading",
"description": "Directory containing the mutliqc headers for multiple tables like 'clusters_summary_mqc.txt', 'blast_mqc.txt', ...",
"hidden": true
},
"ivar_header": {
"type": "string",
"hidden": true,
"fa_icon": "fas fa-heading"
}
},
"fa_icon": "fas fa-layer-group"
},
"genome_qc": {
"title": "Consensus QC",
"type": "object",
"description": "Apply different quality control techniques on the generated consensus genomes",
"default": "",
"properties": {
"skip_consensus_qc": {
"type": "boolean",
"description": "Skip the quality measurements on consensus genomes",
"fa_icon": "fas fa-forward"
},
"skip_checkv": {
"type": "boolean",
"description": "Skip the use of checkv for quality check",
"fa_icon": "fas fa-forward"
},
"checkv_db": {
"type": "string",
"format": "path",
"fa_icon": "fas fa-database",
"description": "Reference database used by checkv for consensus quality control",
"help_text": "If not given, the most recent one is downloaded."
},
"skip_annotation": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip the annotation of the consensus constructs"
},
"annotation_db": {
"type": "string",
"default": "ftp://ftp.expasy.org/databases/viralzone/2020_4/virosaurus90_vertebrate-20200330.fas.gz",
"fa_icon": "fas fa-database",
"description": "Database used for annotation of the cosensus constructs",
"help_text": "The metada fields are stored in the fasta comment as `key1:\"value1\"|key2:\"value2\"|...` see docs/databases.md for more information."
},
"skip_quast": {
"type": "boolean",
"description": "Skip the use of QUAST for quality check",
"fa_icon": "fas fa-forward"
},
"skip_blast_qc": {
"type": "boolean",
"fa_icon": "fas fa-forward",
"description": "Skip the blast search of contigs to the provided reference DB"
},
"skip_alignment_qc": {
"type": "boolean",
"description": "Skip creating an alignment of each the collapsed clusters and each iterative step",
"fa_icon": "fas fa-forward"
},
"mmseqs_searchtype": {
"type": "integer",
"default": 4,
"fa_icon": "fas fa-search",
"description": "Specify the search algorithm to use for mmseqs. 0: auto 1: amino acid, 2: translated, 3: nucleotide, 4: translated nucleotide alignment",
"help_text": "Only search-type 3 supports both forward and reverse search\n1 - BLASTP;\n2 - TBLASTN;\n3 - BLASTN;\n4 - TBLASTX"
}
},
"fa_icon": "fas fa-balance-scale"
},
"institutional_config_options": {
"title": "Institutional config options",
"type": "object",
"fa_icon": "fas fa-university",
"description": "Parameters used to describe centralised config profiles. These should not be edited.",
"help_text": "The centralised nf-core configuration profiles use a handful of pipeline parameters to describe themselves. This information is then printed to the Nextflow log when you run a pipeline. You should not need to change these values when you run a pipeline.",
"properties": {
"custom_config_version": {
"type": "string",
"description": "Git commit id for Institutional configs.",
"default": "master",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"custom_config_base": {
"type": "string",
"description": "Base directory for Institutional configs.",
"default": "https://raw.githubusercontent.com/nf-core/configs/master",
"hidden": true,
"help_text": "If you're running offline, Nextflow will not be able to fetch the institutional config files from the internet. If you don't need them, then this is not a problem. If you do need them, you should download the files from the repo and tell Nextflow where to find them with this parameter.",
"fa_icon": "fas fa-users-cog"
},
"config_profile_name": {
"type": "string",
"description": "Institutional config name.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_description": {
"type": "string",
"description": "Institutional config description.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_contact": {
"type": "string",
"description": "Institutional config contact information.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
},
"config_profile_url": {
"type": "string",
"description": "Institutional config URL link.",
"hidden": true,
"fa_icon": "fas fa-users-cog"
}
}
},
"generic_options": {
"title": "Generic options",
"type": "object",
"fa_icon": "fas fa-file-import",
"description": "Less common options for the pipeline, typically set in a config file.",
"help_text": "These options are common to all nf-core pipelines and allow you to customise some of the core preferences for how the pipeline runs.\n\nTypically these options would be set in a Nextflow config file loaded for all pipeline runs, such as `~/.nextflow/config`.",
"properties": {
"version": {
"type": "boolean",
"description": "Display version and exit.",
"fa_icon": "fas fa-question-circle",
"hidden": true
},
"publish_dir_mode": {
"type": "string",
"default": "copy",
"description": "Method used to save pipeline results to output directory.",
"help_text": "The Nextflow `publishDir` option specifies which intermediate files should be saved to the output directory. This option tells the pipeline what method should be used to move these files. See [Nextflow docs](https://www.nextflow.io/docs/latest/process.html#publishdir) for details.",
"fa_icon": "fas fa-copy",
"enum": ["symlink", "rellink", "link", "copy", "copyNoFollow", "move"],
"hidden": true
},
"email_on_fail": {
"type": "string",
"description": "Email address for completion summary, only when pipeline fails.",
"fa_icon": "fas fa-exclamation-triangle",
"pattern": "^([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\\.([a-zA-Z]{2,5})$",
"help_text": "An email address to send a summary email to when the pipeline is completed - ONLY sent if the pipeline does not exit successfully.",
"hidden": true
},
"plaintext_email": {
"type": "boolean",
"description": "Send plain-text email instead of HTML.",
"fa_icon": "fas fa-remove-format",
"hidden": true
},
"max_multiqc_email_size": {
"type": "string",
"description": "File size limit when attaching MultiQC reports to summary emails.",
"pattern": "^\\d+(\\.\\d+)?\\.?\\s*(K|M|G|T)?B$",
"default": "25.MB",
"fa_icon": "fas fa-file-upload",
"hidden": true
},
"monochrome_logs": {
"type": "boolean",
"description": "Do not use coloured log outputs.",
"fa_icon": "fas fa-palette",
"hidden": true
},
"hook_url": {
"type": "string",
"description": "Incoming hook URL for messaging service",
"fa_icon": "fas fa-people-group",
"help_text": "Incoming hook URL for messaging service. Currently, MS Teams and Slack are supported.",
"hidden": true
},
"multiqc_title": {
"type": "string",
"description": "MultiQC report title. Printed as page header, used for filename if not otherwise specified.",
"fa_icon": "fas fa-file-signature",
"hidden": true
},
"multiqc_config": {
"type": "string",
"format": "file-path",
"description": "Custom config file to supply to MultiQC.",
"fa_icon": "fas fa-cog",
"hidden": true
},
"multiqc_logo": {
"type": "string",
"description": "Custom logo file to supply to MultiQC. File name must also be set in the MultiQC config file",
"fa_icon": "fas fa-image",
"hidden": true
},
"multiqc_methods_description": {
"type": "string",
"description": "Custom MultiQC yaml file containing HTML including a methods description.",
"fa_icon": "fas fa-cog"
},
"clean_output_on_error": {
"type": "boolean",
"fa_icon": "fas fa-trash-alt",
"description": "Delete the output directory if the pipeline fails",
"hidden": true
},
"custom_table_headers": {
"type": "string",
"default": "${projectDir}/assets/custom_table_headers.yml",
"fa_icon": "fas fa-heading",
"description": "Custom yaml file contian g the table column names selection and new names.",
"hidden": true
},
"validate_params": {
"type": "boolean",
"description": "Boolean whether to validate parameters against the schema at runtime",
"default": true,
"fa_icon": "fas fa-check-square",
"hidden": true
},
"prefix": {
"type": "string",
"description": "Prefix of all output files followed by [date]_[pipelineversion]_[runName]",
"fa_icon": "fab fa-autoprefixer",
"help_text": "Use '--global_prefix' to not have metadata embedded."
},
"global_prefix": {
"type": "string",
"fa_icon": "fab fa-autoprefixer",
"description": "Global prefix set if you don't want metadata embedded in the prefix"
},
"pipelines_testdata_base_path": {
"type": "string",
"fa_icon": "far fa-check-circle",
"description": "Base URL or local path to location of pipeline test dataset files",
"default": "https://raw.githubusercontent.com/nf-core/test-datasets/",
"hidden": true
}
}
}
},
"allOf": [
{
"$ref": "#/$defs/input_output_options"
},
{
"$ref": "#/$defs/preprocessing_options"
},
{
"$ref": "#/$defs/metagenomic_diveristy"
},
{
"$ref": "#/$defs/assembly"
},
{
"$ref": "#/$defs/polishing"
},
{
"$ref": "#/$defs/iterative_consensus_refinement"
},
{
"$ref": "#/$defs/variant_analysis"
},
{
"$ref": "#/$defs/genome_qc"
},
{
"$ref": "#/$defs/institutional_config_options"
},
{
"$ref": "#/$defs/generic_options"
}
]
}