[
    {
        "id": "trimmomatic",
        "name": "Trimmomatic",
        "article": "10.1093\/bioinformatics\/btu170",
        "website": "http:\/\/www.usadellab.org\/cms\/?page=trimmomatic",
        "git": null,
        "description": "A flexible read trimming tool for Illumina NGS data",
        "version": "0.39",
        "documentation": "http:\/\/www.usadellab.org\/cms\/uploads\/supplementary\/Trimmomatic\/TrimmomaticManual_V0.32.pdf",
        "multiqc": "trimmomatic",
        "commands": [
            {
                "name": "trimmomatic_PE",
                "cname": "Trimmomatic PE",
                "command": "trimmomatic PE",
                "category": "quality",
                "output_dir": "trimmomatic_PE",
                "inputs": [
                    {
                        "name": "read",
                        "type": "reads"
                    },
                    {
                        "name": "read2",
                        "type": "reads"
                    }
                ],
                "outputs": [
                    {
                        "name": "readFP",
                        "type": "reads",
                        "file": "{sample}_forward_paired.fq.gz",
                        "description": "Reads forward paired"
                    },
                    {
                        "name": "readFU",
                        "type": "reads",
                        "file": "{sample}_forward_unpaired.fq.gz",
                        "description": "Reads forward unpaired"
                    },
                    {
                        "name": "readRP",
                        "type": "reads",
                        "file": "{sample}_reverse_paired.fq.gz",
                        "description": "Reads reverse paired"
                    },
                    {
                        "name": "readRU",
                        "type": "reads",
                        "file": "{sample}_reverse_unpaired.fq.gz",
                        "description": "Reads reverse unpaired"
                    }
                ],
                "options": [
                    {
                        "name": "trimmomatic_threads",
                        "prefix": "-threads",
                        "type": "numeric",
                        "value": 4,
                        "min": 1,
                        "max": "NA",
                        "step": 1,
                        "label": "Number of threads to use"
                    },
                    {
                        "name": "trimmomatic_qc_score",
                        "type": "radio",
                        "value": "-phred64",
                        "choices": [
                            {
                                "phred33": "-phred33"
                            },
                            {
                                "phred64": "-phred64"
                            }
                        ],
                        "label": "Quality score encoding"
                    },
                    {
                        "name": "trimmomatic_fastaWithAdapters",
                        "type": "input_file",
                        "value": "",
                        "label": "(optional leave blank to use default Illumina adapters) fastaWithAdapters file for ILLUMINACLIP parameter"
                    },
                    {
                        "name": "trimmomatic_illuminaAdapters_PE",
                        "type": "radio",
                        "value": "TruSeq3-",
                        "choices": [
                            {
                                "TruSeq3": "TruSeq3-"
                            },
                            {
                                "TruSeq2": "TruSeq2-"
                            }
                        ],
                        "label": "Use adapter sequences provided for illumina"
                    },
                    {
                        "name": "trimmomatic_illuminaclip_PE",
                        "type": "text",
                        "value": ":2:30:10:0",
                        "label": "(optional) See ILLUMINACLIP in documentation <seed mismatches>:<palindrome clip threshold>:<simple clip threshold>:<sminAdapterLength>"
                    },
                    {
                        "name": "trimmomatic_MINLEN",
                        "type": "numeric",
                        "value": 40,
                        "min": 10,
                        "max": "NA",
                        "step": 1,
                        "label": "Specifies the minimum length of reads to be kept."
                    },
                    {
                        "name": "trimmomatic_otherparams_PE",
                        "type": "text",
                        "value": "",
                        "label": "(optional) See documentation for other trimmomatic parameters (LEADING, TRAILING,  ...)"
                    }
                ]
            },
            {
                "name": "trimmomatic_SE",
                "cname": "Trimmomatic SE",
                "command": "trimmomatic SE",
                "category": "quality",
                "output_dir": "trimmomatic_SE",
                "inputs": [
                    {
                        "name": "read",
                        "type": "reads"
                    }
                ],
                "outputs": [
                    {
                        "name": "read",
                        "type": "reads",
                        "file": "{sample}_trimmed.fq.gz",
                        "description": "Reads trimmed"
                    }
                ],
                "options": [
                    {
                        "name": "trimmomatic_threads",
                        "prefix": "-threads",
                        "type": "numeric",
                        "value": 4,
                        "min": 1,
                        "max": "NA",
                        "step": 1,
                        "label": "Number of threads to use"
                    },
                    {
                        "name": "trimmomatic_qc_score",
                        "type": "radio",
                        "value": "-phred64",
                        "choices": [
                            {
                                "phred33": "-phred33"
                            },
                            {
                                "phred64": "-phred64"
                            }
                        ],
                        "label": "Quality score encoding"
                    },
                    {
                        "name": "trimmomatic_fastaWithAdapters",
                        "type": "input_file",
                        "value": "",
                        "label": "(optional leave blank to use default Illumina adapters) fastaWithAdapters file for ILLUMINACLIP parameter"
                    },
                    {
                        "name": "trimmomatic_illuminaAdapters_SE",
                        "type": "radio",
                        "value": "TruSeq3-",
                        "choices": [
                            {
                                "TruSeq3": "TruSeq3-"
                            },
                            {
                                "TruSeq2": "TruSeq2-"
                            }
                        ],
                        "label": "Use adapter sequences provided for illumina"
                    },
                    {
                        "name": "trimmomatic_illuminaclip_SE",
                        "type": "text",
                        "value": ":2:30:10:0",
                        "label": "(optional) See ILLUMINACLIP in documentation <seed mismatches>:<palindrome clip threshold>:<simple clip threshold>:<minAdapterLength>"
                    },
                    {
                        "name": "trimmomatic_MINLEN",
                        "type": "numeric",
                        "value": 40,
                        "min": 10,
                        "max": "NA",
                        "step": 1,
                        "label": "Specifies the minimum length of reads to be kept."
                    },
                    {
                        "name": "trimmomatic_otherparams_SE",
                        "type": "text",
                        "value": "",
                        "label": "(optional) See documentation for other trimmomatic parameters (LEADING, TRAILING, ...)"
                    }
                ]
            }
        ],
        "install": [],
        "citations": {
            "trimmomatic": [
                "Anthony M. Bolger, Marc Lohse, Bjoern Usadel, Trimmomatic: a flexible trimmer for Illumina sequence data, Bioinformatics, Volume 30, Issue 15, 1 August 2014, Pages 2114-2120, https:\/\/doi.org\/10.1093\/bioinformatics\/btu170"
            ]
        },
        "yaml": "{\n  id: trimmomatic,\n  name: Trimmomatic,\n  article: \"10.1093\/bioinformatics\/btu170\",\n  website: \"http:\/\/www.usadellab.org\/cms\/?page=trimmomatic\",\n  git: ~,\n  description: A flexible read trimming tool for Illumina NGS data,\n  version: \"0.39\",\n  documentation: \"http:\/\/www.usadellab.org\/cms\/uploads\/supplementary\/Trimmomatic\/TrimmomaticManual_V0.32.pdf\",\n  multiqc: \"trimmomatic\",\n  commands:\n    [\n      {\n        name: trimmomatic_PE,\n        cname: \"Trimmomatic PE\",\n        command: trimmomatic PE,\n        category: \"quality\",\n        output_dir: trimmomatic_PE,\n        inputs: [{ name: read, type: \"reads\" }, { name: read2, type: \"reads\" }],\n        outputs:\n          [\n            { name: readFP, type: \"reads\", file: \"{sample}_forward_paired.fq.gz\", description: \"Reads forward paired\" },\n            {\n              name: readFU,\n              type: \"reads\",\n              file: \"{sample}_forward_unpaired.fq.gz\",\n              description: \"Reads forward unpaired\"\n            },\n            { name: readRP, type: \"reads\", file: \"{sample}_reverse_paired.fq.gz\", description: \"Reads reverse paired\" },\n            {\n              name: readRU,\n              type: \"reads\",\n              file: \"{sample}_reverse_unpaired.fq.gz\",\n              description: \"Reads reverse unpaired\"\n            },\n          ],\n        options:\n          [\n            {\n              name: trimmomatic_threads,\n              prefix: -threads,\n              type: numeric,\n              value: 4,\n              min: 1,\n              max: NA,\n              step: 1,\n              label: \"Number of threads to use\",\n            },\n            {\n              name: trimmomatic_qc_score,\n              type: radio,\n              value: \"-phred64\",\n              choices: [phred33: -phred33, phred64: -phred64],\n              label: \"Quality score encoding\",\n            },\n            {\n              name: trimmomatic_fastaWithAdapters,\n              type: input_file,\n              value: \"\",\n              label: \"(optional leave blank to use default Illumina adapters) fastaWithAdapters file for ILLUMINACLIP parameter\",\n            },\n            {\n              name: trimmomatic_illuminaAdapters_PE,\n              type: radio,\n              value: \"TruSeq3-\",\n              choices: [TruSeq3: TruSeq3-, TruSeq2: TruSeq2-],\n              label: \"Use adapter sequences provided for illumina\",\n            },\n            {\n              name: trimmomatic_illuminaclip_PE,\n              type: text,\n              value: \":2:30:10:0\",\n              label: \"(optional) See ILLUMINACLIP in documentation <seed mismatches>:<palindrome clip threshold>:<simple clip threshold>:<sminAdapterLength>\",\n            },\n            {\n              name: trimmomatic_MINLEN,\n              type: numeric,\n              value: 40,\n              min: 10,\n              max: NA,\n              step: 1,\n              label: \"Specifies the minimum length of reads to be kept.\",\n            },             \n            {\n              name: trimmomatic_otherparams_PE,\n              type: text,\n              value: \"\",\n              label: \"(optional) See documentation for other trimmomatic parameters (LEADING, TRAILING,  ...)\",\n            },\n          ],\n      },\n      {\n        name: trimmomatic_SE,\n        cname: \"Trimmomatic SE\",\n        command: trimmomatic SE,\n        category: \"quality\",\n        output_dir: trimmomatic_SE,\n        inputs: [{ name: read, type: \"reads\" }],\n        outputs: [{ name: read, type: \"reads\", file: \"{sample}_trimmed.fq.gz\", description: \"Reads trimmed\" }],\n        options:\n          [\n            {\n              name: trimmomatic_threads,\n              prefix: -threads,\n              type: numeric,\n              value: 4,\n              min: 1,\n              max: NA,\n              step: 1,\n              label: \"Number of threads to use\",\n            },\n            {\n              name: trimmomatic_qc_score,\n              type: radio,\n              value: \"-phred64\",\n              choices: [phred33: -phred33, phred64: -phred64],\n              label: \"Quality score encoding\",\n            },\n            {\n              name: trimmomatic_fastaWithAdapters,\n              type: input_file,\n              value: \"\",\n              label: \"(optional leave blank to use default Illumina adapters) fastaWithAdapters file for ILLUMINACLIP parameter\",\n            },\n            {\n              name: trimmomatic_illuminaAdapters_SE,\n              type: radio,\n              value: \"TruSeq3-\",\n              choices: [TruSeq3: TruSeq3-, TruSeq2: TruSeq2-],\n              label: \"Use adapter sequences provided for illumina\",\n            },\n            {\n              name: trimmomatic_illuminaclip_SE,\n              type: text,\n              value: \":2:30:10:0\",\n              label: \"(optional) See ILLUMINACLIP in documentation <seed mismatches>:<palindrome clip threshold>:<simple clip threshold>:<minAdapterLength>\",\n            },\n            {\n              name: trimmomatic_MINLEN,\n              type: numeric,\n              value: 40,\n              min: 10,\n              max: NA,\n              step: 1,\n              label: \"Specifies the minimum length of reads to be kept.\",\n            }, \n            {\n              name: trimmomatic_otherparams_SE,\n              type: text,\n              value: \"\",\n              label: \"(optional) See documentation for other trimmomatic parameters (LEADING, TRAILING, ...)\",\n            },\n          ],\n      },\n    ],\n  install: {\n    # trimmomatic: [\n    #   \"cd \/opt\/biotools\",\n    #   \"wget http:\/\/www.usadellab.org\/cms\/uploads\/supplementary\/Trimmomatic\/Trimmomatic-0.38.zip\",\n    #   \"unzip Trimmomatic-0.38.zip\",\n    #   \"echo -e '#!\/bin\/bash \\n java -jar \/opt\/biotools\/Trimmomatic-0.38\/trimmomatic-0.38.jar' > bin\/trimmomatic\",\n    #   \"chmod 777 bin\/trimmomatic\",\n    #   \"rm Trimmomatic-0.38.zip\"\n    # ],\n    # java8: [\n    #   \"apt -y update && apt install -y openjdk-8-jre\"\n    # ]\n  },\n  citations:  {\n    trimmomatic: [\n      \"Anthony M. Bolger, Marc Lohse, Bjoern Usadel, Trimmomatic: a flexible trimmer for Illumina sequence data, Bioinformatics, Volume 30, Issue 15, 1 August 2014, Pages 2114-2120, https:\/\/doi.org\/10.1093\/bioinformatics\/btu170\"\n    ]\n  }\n}\n"
    }
]