[
    {
        "id": "cutadapt",
        "name": "Cutadapt",
        "article": "10.14806\/ej.17.1.200",
        "website": "https:\/\/cutadapt.readthedocs.io\/en\/stable\/index.html",
        "git": "https:\/\/github.com\/marcelm\/cutadapt\/",
        "description": "Cutadapt finds and removes adapter sequences, primers, poly-A tails and other types of unwanted sequence from your high-throughput sequencing reads.",
        "version": "4.4",
        "documentation": "https:\/\/cutadapt.readthedocs.io\/en\/stable\/index.html",
        "multiqc": "cutadapt",
        "commands": [
            {
                "name": "cutadapt_PE",
                "cname": "Cutadapt PE",
                "command": "cutadapt",
                "category": "quality",
                "output_dir": "cutadapt_PE",
                "inputs": [
                    {
                        "name": "read",
                        "type": "reads"
                    },
                    {
                        "name": "read2",
                        "type": "reads"
                    }
                ],
                "outputs": [
                    {
                        "name": "read_trimmed",
                        "type": "fq.gz",
                        "file": "{sample}_trimmed_R1.fq.gz",
                        "description": "Reads forward trimmed"
                    },
                    {
                        "name": "read2_trimmed",
                        "type": "fq.gz",
                        "file": "{sample}_trimmed_R2.fq.gz",
                        "description": "Reads reverse trimmed"
                    }
                ],
                "options": [
                    {
                        "name": "cutadapt_threads",
                        "prefix": "--cores",
                        "type": "numeric",
                        "value": 4,
                        "min": 1,
                        "max": "NA",
                        "step": 1,
                        "label": "Number of threads to use"
                    },
                    {
                        "name": "cutadapt_qc_score",
                        "type": "radio",
                        "value": "--quality-base=33",
                        "choices": [
                            {
                                "phred33": "--quality-base=33"
                            },
                            {
                                "phred64": "--quality-base=64"
                            }
                        ],
                        "label": "Quality score encoding"
                    },
                    {
                        "name": "cutadapt_qc_min",
                        "prefix": "-q",
                        "type": "numeric",
                        "value": 20,
                        "min": 0,
                        "max": "NA",
                        "step": 1,
                        "label": "trim low-quality 3'ends from reads before adapter removal"
                    },
                    {
                        "name": "cutadapt_max_N",
                        "prefix": "--max-n",
                        "type": "numeric",
                        "value": 0,
                        "min": 0,
                        "max": "NA",
                        "step": "NA",
                        "label": "Discard reads with more than X N bases. If X is an number between 0 and 1, it is interpreted as a fraction of the read length"
                    },
                    {
                        "name": "cutadapt_a",
                        "prefix": "-a",
                        "type": "text",
                        "value": "",
                        "label": "Forward adapter sequence"
                    },
                    {
                        "name": "cutadapt_A",
                        "prefix": "-A",
                        "type": "text",
                        "value": "",
                        "label": "Reverse adapter sequence"
                    }
                ]
            },
            {
                "name": "cutadapt_SE",
                "cname": "Cutadapt SE",
                "command": "cutadapt",
                "category": "quality",
                "output_dir": "cutadapt_SE",
                "inputs": [
                    {
                        "name": "read",
                        "type": "reads"
                    }
                ],
                "outputs": [
                    {
                        "name": "read_trimmed",
                        "type": "fq.gz",
                        "file": "{sample}_trimmed.fq.gz",
                        "description": "Reads trimmed"
                    }
                ],
                "options": [
                    {
                        "name": "cutadapt_threads",
                        "prefix": "--cores",
                        "type": "numeric",
                        "value": 4,
                        "min": 1,
                        "max": "NA",
                        "step": 1,
                        "label": "Number of threads to use"
                    },
                    {
                        "name": "cutadapt_qc_score",
                        "type": "radio",
                        "value": "--quality-base=33",
                        "choices": [
                            {
                                "phred33": "--quality-base=33"
                            },
                            {
                                "phred64": "--quality-base=64"
                            }
                        ],
                        "label": "Quality score encoding"
                    },
                    {
                        "name": "cutadapt_qc_min",
                        "prefix": "-q",
                        "type": "numeric",
                        "value": 20,
                        "min": 0,
                        "max": "NA",
                        "step": 1,
                        "label": "trim low-quality 3'ends from reads before adapter removal"
                    },
                    {
                        "name": "cutadapt_a",
                        "prefix": "-a",
                        "type": "text",
                        "value": "",
                        "label": "Forward adapter sequence"
                    }
                ]
            }
        ],
        "install": [],
        "citations": {
            "cutadapt": [
                "Martin, M. (2011). Cutadapt removes adapter sequences from high-throughput sequencing reads. EMBnet.journal, 17(1), pp. 10-12. doi:https:\/\/doi.org\/10.14806\/ej.17.1.200"
            ],
            "pigz": [
                "Copyright(C) 2007-2017 MarkAdler <madler@alumni.caltech.edu>"
            ]
        },
        "yaml": "{\n  id: cutadapt,\n  name: Cutadapt,\n  article: \"10.14806\/ej.17.1.200\",\n  website: \"https:\/\/cutadapt.readthedocs.io\/en\/stable\/index.html\",\n  git: \"https:\/\/github.com\/marcelm\/cutadapt\/\",\n  description: \"Cutadapt finds and removes adapter sequences, primers, poly-A tails and other types of unwanted sequence from your high-throughput sequencing reads.\",\n  version: \"4.4\",\n  documentation: \"https:\/\/cutadapt.readthedocs.io\/en\/stable\/index.html\",\n  multiqc: \"cutadapt\",\n  commands:\n    [\n      {\n        name: cutadapt_PE,\n        cname: \"Cutadapt PE\",\n        command: cutadapt,\n        category: \"quality\",\n        output_dir: cutadapt_PE,\n        inputs: [{ name: read, type: \"reads\" }, { name: read2, type: \"reads\" }],\n        outputs:\n          [\n            { name: read_trimmed, type: \"fq.gz\",  file: \"{sample}_trimmed_R1.fq.gz\", description: \"Reads forward trimmed\" },\n            { name: read2_trimmed, type: \"fq.gz\", file: \"{sample}_trimmed_R2.fq.gz\", description: \"Reads reverse trimmed\" },\n          ],\n        options:\n          [\n            {\n              name: cutadapt_threads,\n              prefix: --cores,\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: cutadapt_qc_score,\n              type: radio,\n              value: \"--quality-base=33\",\n              choices: [phred33: --quality-base=33, phred64: --quality-base=64],\n              label: \"Quality score encoding\",\n            },\n            {\n              name: cutadapt_qc_min,\n              prefix: -q,\n              type: numeric,\n              value: 20,\n              min: 0,\n              max: NA,\n              step: 1,\n              label: \"trim low-quality 3'ends from reads before adapter removal\",\n            },\n            {\n              name: cutadapt_max_N,\n              prefix: --max-n,\n              type: numeric,\n              value: 0,\n              min: 0,\n              max: NA,\n              step: NA,\n              label: \"Discard reads with more than X N bases. If X is an number between 0 and 1, it is interpreted as a fraction of the read length\",\n            },\n            {\n              name: cutadapt_a,\n              prefix: -a,\n              type: text,\n              value: \"\",\n              label: \"Forward adapter sequence\",\n            },\n            {\n              name: cutadapt_A,\n              prefix: -A,\n              type: text,\n              value: \"\",\n              label: \"Reverse adapter sequence\",\n            },\n          ],\n      },\n      {\n        name: cutadapt_SE,\n        cname: \"Cutadapt SE\",\n        command: cutadapt,\n        category: \"quality\",\n        output_dir: cutadapt_SE,\n        inputs: [{ name: read, type: \"reads\" }],\n        outputs: [{ name: read_trimmed, type: \"fq.gz\", file: \"{sample}_trimmed.fq.gz\", description: \"Reads trimmed\"}],\n        options:\n          [\n            {\n              name: cutadapt_threads,\n              prefix: --cores,\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: cutadapt_qc_score,\n              type: radio,\n              value: \"--quality-base=33\",\n              choices: [phred33: --quality-base=33, phred64: --quality-base=64],\n              label: \"Quality score encoding\",\n            },\n            {\n              name: cutadapt_qc_min,\n              prefix: -q,\n              type: numeric,\n              value: 20,\n              min: 0,\n              max: NA,\n              step: 1,\n              label: \"trim low-quality 3'ends from reads before adapter removal\",\n            },\n            {\n              name: cutadapt_a,\n              prefix: -a,\n              type: text,\n              value: \"\",\n              label: \"Forward adapter sequence\",\n            },\n          ],\n      },\n    ],\n  install: {\n    # cutadapt: [\n    #   \"pip3 install cutadapt==4.0\",\n    # ],\n    # pigz: [\n    #   \"apt-get install -y pigz\"\n    # ]\n  },\n  citations:  {\n    cutadapt: [\n      \"Martin, M. (2011). Cutadapt removes adapter sequences from high-throughput sequencing reads. EMBnet.journal, 17(1), pp. 10-12. doi:https:\/\/doi.org\/10.14806\/ej.17.1.200\"\n    ],\n    pigz: [\n      \"Copyright(C) 2007-2017 MarkAdler <madler@alumni.caltech.edu>\"\n    ]\n  }\n}\n"
    }
]