changeset 0:a378f3ee0137 draft

author ieguinoa
date Thu, 25 Mar 2021 14:03:59 +0000
children 3ed9b8271977
files .shed.yml crispresso2.xml
diffstat 2 files changed, 124 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/.shed.yml	Thu Mar 25 14:03:59 2021 +0000
@@ -0,0 +1,14 @@
+    - Sequence Analysis
+description: |
+    CRISPResso2 is a software pipeline designed to enable rapid and intuitive interpretation of genome editing experiments
+long_description: |
+  CRISPResso2 
+  1) Aligns sequencing reads to a reference sequence
+  2) Quantifies insertions, mutations and deletions to determine whether a read is modified or unmodified by genome editing
+  3) summarizes editing results in intuitive plots and datasets
+name: crispresso2
+owner: iuc
+type: unrestricted
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crispresso2.xml	Thu Mar 25 14:03:59 2021 +0000
@@ -0,0 +1,110 @@
+<tool id="crispresso2" name="CRISPResso2" version="0.1.0" python_template_version="3.5">
+    <requirements>
+        <requirement type="package" version="2.0.45">crispresso2</requirement>
+    </requirements>
+    <command detect_errors="exit_code"><![CDATA[
+        mkdir crispresso_out;
+        #if $singlePaired.fastq_r1.is_of_type('fastq.gz', 'fastqsanger.gz'):
+            #set $r1 = 'seq_name.fastq.gz'
+        #else:
+            #set $r1 = 'seq_name.fastq'
+        #end if
+        ln -s $singlePaired.fastq_r1 $r1;
+        mkdir -p '${html_file.files_path}' &&
+        #if str($singlePaired.sPaired) == 'paired':
+            #if $singlePaired.fastq_r2.is_of_type('fastq.gz', 'fastqsanger.gz'):
+                #set $r2 = 'seq_name.fastq.gz'
+            #else:
+                #set $r2 = 'seq_name.fastq'
+            #end if
+            ln -s $singlePaired.fastq_r2 $r2;
+        #end if
+        CRISPResso --fastq_r1 $r1
+        #if str($singlePaired.sPaired) == 'paired':
+            --fastq_r2 $r2
+        #end if
+        --amplicon_seq '$amplicon_seq' 
+        -an '$amplicon_name'
+        -n output
+        #if $sgrna_parameters.guide_name:
+            --guide_name $sgrna_parameters.guide_name
+        #end if
+        #if $sgrna_parameters.flexiguide:
+            -fg $sgrna_parameters.flexiguide
+        #end if
+        #if $sgrna_parameters.flexiguide_homology:
+            --flexiguide_homology $sgrna_parameters.flexiguide_homology
+        #end if
+        #if $sgrna_parameters.flexiguide_name:
+            --flexiguide_name '$sgrna_parameters.flexiguide_name'
+        #end if
+        #if $coding_seq:
+            --coding_seq '$coding_seq'
+        #end if
+        $sgrna_parameters.discard_guide_positions_overhanging_amplicon_edge
+        $filtering_parameters.split_interleaved_input
+        #if $filtering_parameters.min_average_read_quality:
+            --min_average_read_quality $filtering_parameters.min_average_read_quality
+        #end if
+        #if $filtering_parameters.min_single_bp_quality:
+            --min_single_bp_quality $filtering_parameters.min_single_bp_quality
+        #end if
+        #if $filtering_parameters.min_bp_quality_or_N:
+            --min_bp_quality_or_N $filtering_parameters.min_bp_quality_or_N
+        #end if
+        #if $filtering_parameters.min_paired_end_reads_overlap:
+            --min_paired_end_reads_overlap $filtering_parameters.min_paired_end_reads_overlap
+        #end if
+        #if $filtering_parameters.max_paired_end_reads_overlap:
+            --max_paired_end_reads_overlap $filtering_parameters.max_paired_end_reads_overlap
+        #end if
+        $filtering_parameters.stringent_flash_merging
+        -o '${html_file.files_path}' > $output_log 
+        && cp '${html_file.files_path}'/*\.html crispresso.html
+    ]]></command>
+    <inputs>
+        <conditional name="singlePaired">
+            <param name="sPaired" type="select" label="Single-end or paired-end reads">
+                <option value="single" selected="true">Single-end</option>
+                <option value="paired">Paired-end</option>
+            </param>
+            <when value="single">
+                <param format="fastq,fastq.gz,fastqsanger.gz" name="fastq_r1" type="data" label="FASTQ file"/>
+            </when>
+            <when value="paired">
+                <param format="fastq,fastq.gz,fastqsanger.gz" name="fastq_r1" type="data" label="FASTQ file, forward reads"/>
+                <param format="fastq,fastq.gz,fastqsanger.gz" name="fastq_r2" type="data" label="FASTQ file, reverse reads"/>
+            </when>
+        </conditional>
+        <param name="amplicon_seq" type="text" label="Amplicon sequence" help="If submitting more than 1 amplicon, use commas to separate them"/>
+        <param name="amplicon_name" type="text" label="Amplicon name" help="--amplicon_name"/>
+        <param name="expected_hdr_amplicon_seq" type="text" label="Amplicon sequence expected after HDR" help="--expected_hdr_amplicon_seq"/>
+        <param argument="--coding_seq" type="text" value="" label="Subsequence/s of the amplicon sequence covering one or more coding sequences for frameshift analysis" help="--coding_seq"/>
+        <section name="sgrna_parameters" expanded="false" title="sgRNA parameters">
+            <param argument="--guide_name" type="text" label="sgRNA names" help="if more than one, please separate by commas. (default: sgRNA)"/>
+            <param argument="--flexiguide" type="text" value="" label="sgRNA sequence (flexible)" help="The flexiguide sequence will be aligned to the amplicon sequence(s), as long as the guide sequence has homology as set by --flexiguide_homology"/>
+            <param argument="--flexiguide_homology" type="integer" value="80" label="Flexiguide homology" help="will yield guides in amplicons with at least this homology to the flexiguide sequence (default:80 meaning 80% homology is required)"/>
+            <param argument="--flexiguide_name" type="text" value="" optional="True" label="Names for the flexiguides" help="Similar to --guide_name"/>
+            <param name="discard_guide_positions_overhanging_amplicon_edge" truevalue="" falsevalue="--discard_guide_positions_overhanging_amplicon_edge" type="boolean" default="False" label="Discard guide positions overhanging amplicon edge" help="If set, for guides that align to multiple positions, guide positions will be discarded if plotting around those regions would included bp that extend beyond the end of the amplicon"/>
+        </section>
+        <section name="filtering_parameters" expanded="false" title="Read filtering, trimming, and merging parameters">
+            <param name="split_interleaved_input" type="boolean" default="False" truevalue="--split_interleaved_input" falsevalue="" label="Splits a single fastq file containing paired end reads in two files before running CRISPResso"/>
+            <param argument="--min_average_read_quality" value="0" type="integer" label="Minimum average quality score (phred33) to keep a read"/>
+            <param argument="--min_single_bp_quality" type="integer" value="0" label="Minimum single bp score (phred33) to keep a read"/>
+            <param argument="--min_bp_quality_or_N" type="integer" value="0" label="Bases with a quality score (phred33) less than this value will be set to 'N'"/>
+            <param argument="--min_paired_end_reads_overlap" type="integer" value="10" label="Minimum overlap length between reads" help="Parameter for the FLASH read merging step. Minimum required overlap length between two reads to provide a confident overlap. (default: 10)" />
+            <param argument="--max_paired_end_reads_overlap" type="integer" value="100" label="Maximum overlap length between reads" help="Parameter for the FLASH merging step. Maximum overlap length expected in approximately 90% of read pairs. Please see the FLASH manual for more information. (default: 100)"/>
+            <param name="stringent_flash_merging" truevalue="--stringent_flash_merging" falsevalue="" type="boolean" default="False" label="Use stringent parameters for flash merging" help="In the case where flash could merge R1 and R2 reads ambiguously, the expected overlap is calculated as 2*average_read_length - amplicon_length. The flash parameters for --min-overlap and --max-overlap will be set to prefer merged reads with length within 10bp of the expected overlap. These values override the --min_paired_end_reads_overlap or --max_paired_end_reads_overlap CRISPResso parameters"/>
+        </section>
+        <!--<section name="window_parameters" expanded="false" title="Quantification window parameters">-->
+        <!--</section>-->
+    </inputs>
+    <outputs>
+        <data format="txt" name="output_log" label="${} on ${on_string}: log" from_work_dir=""/>
+        <data name="html_file" format="html" from_work_dir="crispresso.html" label="WebPage report"/>
+    </outputs>
+    <help><![CDATA[
+        TODO: Fill in help.
+    ]]></help>