Skip to content
11 changes: 11 additions & 0 deletions workflows/microbiome/samestr-workflow/.dockstore.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
version: 1.2
workflows:
- name: main
subclass: Galaxy
publish: true
primaryDescriptorPath: /samestrgal.ga
testParameterFiles:
- /samestrgal-tests.yml
authors:
- name: 'Xenia Morera Martínez'
orcid: 0009-0000-2380-8385
5 changes: 5 additions & 0 deletions workflows/microbiome/samestr-workflow/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Changelog

## [0.1] - 2026-06-18

First release.
16 changes: 16 additions & 0 deletions workflows/microbiome/samestr-workflow/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# SamestrGal for shared-strain detection in metagenomes

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure that's the best name for the workflow. Other WFs do not mention Galaxy in their name because it's rather obvious after all.


This workflow processes paired-end shotgun metagenomic sequencing reads from multiple samples. It performs the following steps:

- **Preprocessing**: Quality trimming and host read removal using KneadData
- **Taxonomic profiling and marker-based alignment**: MetaPhlAn4 or mOTUs for taxonomic classification and marker based alignment
- **Strain detection**: SameStr tools identify strains across samples and compute pairwise strain comparisons using Maximum Variant Profile Similarity (MVS) scores.

## Inputs

- **Raw Reads**: A collection of paired-end FASTQ files from one or more samples to compare
- **Run MetaPhlAn**: Boolean parameter (default: true) that enables MetaPhlAn-based strain detection

## Outputs

- **MetaPhlAn results** (if enabled): SNV profile summary statistics, taxon counts, strain events, and co-occurrence tables
105 changes: 105 additions & 0 deletions workflows/microbiome/samestr-workflow/samestrgal-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
- doc: Test outline for samestrgal
job:
Raw Reads:
class: Collection
collection_type: list:paired
elements:
- class: Collection
collection_type: paired
identifier: 28C
elements:
- class: File
identifier: forward
location: https://zenodo.org/records/20745835/files/28C_R1.fastq.gz
filetype: fastqsanger.gz
- class: File
identifier: reverse
location: https://zenodo.org/records/20745835/files/28C_R2.fastq.gz
filetype: fastqsanger.gz
- class: Collection
collection_type: paired
identifier: 28B
elements:
- class: File
identifier: forward
location: https://zenodo.org/records/20745835/files/28B_R1.fastq.gz
filetype: fastqsanger.gz
- class: File
identifier: reverse
location: https://zenodo.org/records/20745835/files/28B_R2.fastq.gz
filetype: fastqsanger.gz
- class: Collection
collection_type: paired
identifier: 28A
elements:
- class: File
identifier: forward
location: https://zenodo.org/records/20745835/files/28A_R1.fastq.gz
filetype: fastqsanger.gz
- class: File
identifier: reverse
location: https://zenodo.org/records/20745835/files/28A_R2.fastq.gz
filetype: fastqsanger.gz
Select Host reference genome: hg19
Select Sequencer for Trimmomatic: NexteraPE
Select MetaPhlAn Database: mpa_vJan25_CHOCOPhlAnSGB_202503-11062025
Select SameStr database: mpa_vJan25_CHOCOPhlAnSGB_202503-11062025
Run MetaPhlAn: true
"Percent identity": 0.9
"Minimum alignment length": 40
"Minimum base quality": 20
"Minimum alignment quality": 0
"Minimum vertical coverage": 3
"SameStr Filter: Minimum samples per clade": 2
"SameStr Filter: Marker truncation length": 50
"SameStr Filter: Nucleotides minimum variant coverage": 2
"SameStr Filter: Minimum variant coverage fraction": 0.05
"SameStr Filter: Minimum position coverage": 1
"SameStr Filter: Position coverage standard deviation cutoff": 3.0
"SameStr Filter: Minimum horizontal coverage": 5000
"SameStr Filter: Minimum sample coverage per position": 2
"SameStr Summarize: Minimum overlap for comparison": 5000
"SameStr Summarize: Minimum similarity for shared strains": 0.999
outputs:
"stats file":
element_tests:
t__SGB15299:
asserts:
- that: has_text
text: "28B"
t__SGB4285:
asserts:
- that: has_text
text: "28B"
t__SGB6362:
asserts:
- that: has_text
text: "28B"
"taxon counts":
asserts:
- that: has_text
text: "28A"
- that: has_text
text: "28B"
- that: has_text
text: "28C"
"strain events":
asserts:
- that: has_text
text: "t__SGB15299"
- that: has_text
text: "t__SGB4285"
- that: has_text
text: "t__SGB6362"
- that: has_text
text: "28B"
- that: has_text
text: "28C"
"cooccurrences":
asserts:
- that: has_text
text: "28A"
- that: has_text
text: "28B"
- that: has_text
text: "28C"
Loading