Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,5 @@ testing*
null/
.nf-test
.nf-test.log
modules/nf-core/**/tests/
subworkflows/nf-core/**/tests/
4 changes: 2 additions & 2 deletions .nf-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@ lint:
- tests/default.nf.test
files_unchanged:
- .github/CONTRIBUTING.md
- assets/nf-core-seqinspector_logo_light.png
- docs/images/nf-core-seqinspector_logo_dark.png
- docs/images/nf-core-seqinspector_logo_light.png
- assets/nf-core-seqinspector_logo_light.png
nextflow_config:
- config_defaults:
- params.fastq_screen_references
nf_test_content: false
nf_core_version: 3.5.1
nf_core_version: 3.5.2
repository_type: pipeline
template:
author: Adrien Coulier
Expand Down
5 changes: 4 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ Initial release of nf-core/seqinspector, created with the [nf-core](https://nf-c
- [#100](https://github.com/nf-core/seqinspector/pull/100) Added official logos
- [#103](https://github.com/nf-core/seqinspector/pull/103) Configure full-tests
- [#106](https://github.com/nf-core/seqinspector/pull/106) Parse rundir metadata
- [#108](https://github.com/nf-core/seqinspector/pull/108) Update lists of default steps in the pipeline (#86)
- [#108](https://github.com/nf-core/seqinspector/pull/108) Test data validation (#94)
- [#108](https://github.com/nf-core/seqinspector/pull/108) Update lists of default steps in the pipeline (#86)
- [#110](https://github.com/nf-core/seqinspector/pull/110) Update input schema to accept either tar file or directory as rundir, and fastq messages and patterns
- [#111](https://github.com/nf-core/seqinspector/pull/111) Short summary of seqinspector in README.md (#84)
- [#127](https://github.com/nf-core/seqinspector/pull/127) Added alignment tools - bwamem2 - index and mem
Expand All @@ -36,6 +36,8 @@ Initial release of nf-core/seqinspector, created with the [nf-core](https://nf-c
- [#156](https://github.com/nf-core/seqinspector/pull/156) Added relative sample_size and warning when a sample has less reads than desired sample_size
- [#159](https://github.com/nf-core/seqinspector/pull/159) Added a subworkflow QC_BAM including picard_collecthsmetrics for alignment QC of hybrid-selection data
- [#162](https://github.com/nf-core/seqinspector/pull/162) Add tests for prepare_genome subworkflow
- [#168](https://github.com/nf-core/seqinspector/pull/168) Add contributors list
- [#168](https://github.com/nf-core/seqinspector/pull/168) Add logo to the pipeline logo

### `Fixed`

Expand Down Expand Up @@ -64,6 +66,7 @@ Initial release of nf-core/seqinspector, created with the [nf-core](https://nf-c
- [#148](https://github.com/nf-core/seqinspector/pull/148), [#152](https://github.com/nf-core/seqinspector/pull/152), [#153](https://github.com/nf-core/seqinspector/pull/153) Update documentation
- [#158](https://github.com/nf-core/seqinspector/pull/158) Moved picard_collectmultiplemetrics to the subworkflow QC_BAM
- [#164](https://github.com/nf-core/seqinspector/pull/164) Refactor local subworkflow and pipeline tests
- [#168](https://github.com/nf-core/seqinspector/pull/168) Adhere to strict syntax

### `Dependencies`

Expand Down
30 changes: 17 additions & 13 deletions CITATIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,35 +10,39 @@

## Pipeline tools

- [FastQC](https://www.bioinformatics.babraham.ac.uk/projects/fastqc/)
- [Bowtie2](https://www.nature.com/articles/nmeth.1923)

> Andrews, S. (2010). FastQC: A Quality Control Tool for High Throughput Sequence Data [Online].
> Langmead B, Salzberg SL. Fast gapped-read alignment with Bowtie 2. Nat Methods. 2012 Apr;9(4):357-9. doi: 10.1038/nmeth.1923. PubMed PMID: 22388286.

- [SeqFu](https://telatin.github.io/seqfu2/)
- [BWAMEM2](https://ieeexplore.ieee.org/abstract/document/8820962)

> Telatin A, Fariselli P, Birolo G. SeqFu: A Suite of Utilities for the Robust and Reproducible Manipulation of Sequence Files. Bioengineering 2021, 8, 59. doi.org/10.3390/bioengineering8050059
> Vasimuddin Md, Misra S, Li H, Aluru S. Efficient Architecture-Aware Acceleration of BWA-MEM for Multicore Systems. In: 2019 IEEE International Parallel and Distributed Processing Symposium (IPDPS). IEEE; 2019:314-324. doi:10.1109/IPDPS.2019.00041

- [FastQC](https://www.bioinformatics.babraham.ac.uk/projects/fastqc/)

> Andrews, S. (2010). FastQC: A Quality Control Tool for High Throughput Sequence Data [Online].

- [FastQ Screen](https://www.bioinformatics.babraham.ac.uk/projects/fastq_screen/)

> Wingett SW and Andrews S. FastQ Screen: A tool for multi-genome mapping and quality control [version 2; referees: 4 approved]. F1000Research 2018, 7:1338 (https://doi.org/10.12688/f1000research.15931.2)
> Wingett SW and Andrews S. FastQ Screen: A tool for multi-genome mapping and quality control [version 2; referees: 4 approved]. F1000Research 2018, 7:1338 (https://doi.org/10.12688/f1000research.15931.2)

- [MultiQC](https://pubmed.ncbi.nlm.nih.gov/27312411/)

> Ewels P, Magnusson M, Lundin S, Käller M. MultiQC: summarize analysis results for multiple tools and samples in a single report. Bioinformatics. 2016 Oct 1;32(19):3047-8. doi: 10.1093/bioinformatics/btw354. Epub 2016 Jun 16. PubMed PMID: 27312411; PubMed Central PMCID: PMC5039924.

- [Seqtk](https://github.com/lh3/seqtk)
> Ewels P, Magnusson M, Lundin S, Käller M. MultiQC: summarize analysis results for multiple tools and samples in a single report. Bioinformatics. 2016 Oct 1;32(19):3047-8. doi: 10.1093/bioinformatics/btw354. Epub 2016 Jun 16. PubMed PMID: 27312411; PubMed Central PMCID: PMC5039924.

- [BWAMEM2](https://ieeexplore.ieee.org/abstract/document/8820962)
- [Picard Tools](https://broadinstitute.github.io/picard/)

> Vasimuddin Md, Misra S, Li H, Aluru S. Efficient Architecture-Aware Acceleration of BWA-MEM for Multicore Systems. In: 2019 IEEE International Parallel and Distributed Processing Symposium (IPDPS). IEEE; 2019:314-324. doi:10.1109/IPDPS.2019.00041
> Broad Institute, “Picard Toolkit.” 2019. GitHub Repository. https://broadinstitute.github.io/picard/

- [SAMTOOLS](https://academic.oup.com/bioinformatics/article/25/16/2078/204688)

> Danecek P, Bonfield JK, Liddle J, et al. Twelve years of SAMtools and BCFtools. GigaScience. 2021;10(2):giab008. doi:10.1093/gigascience/giab008
> Danecek P, Bonfield JK, Liddle J, et al. Twelve years of SAMtools and BCFtools. GigaScience. 2021;10(2):giab008. doi:10.1093/gigascience/giab008

- [Picard Tools](https://broadinstitute.github.io/picard/)
- [SeqFu](https://telatin.github.io/seqfu2/)

> Telatin A, Fariselli P, Birolo G. SeqFu: A Suite of Utilities for the Robust and Reproducible Manipulation of Sequence Files. Bioengineering 2021, 8, 59. doi.org/10.3390/bioengineering8050059

> Broad Institute, “Picard Toolkit.” 2019. GitHub Repository. https://broadinstitute.github.io/picard/
- [Seqtk](https://github.com/lh3/seqtk)

## Software packaging/containerisation tools

Expand Down
41 changes: 26 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,10 @@

## Introduction

<picture>
<source media="(prefers-color-scheme: dark)" srcset="docs/images/nf-core-seqinspector_logo_dark.png">
<source media="(prefers-color-scheme: light)" srcset="docs/images/nf-core-seqinspector_logo_light.png">
<img alt="Fallback image description" src="docs/images/nf-core-seqinspector_logo_light.png">
</picture>

<picture>
<source media="(prefers-color-scheme: dark)" srcset="docs/images/nfcore-seqinspector-logo-hex-dark.png">
<source media="(prefers-color-scheme: light)" srcset="docs/images/nfcore-seqinspector-logo-hex-light.png">
<img alt="Fallback image description" src="docs/images/nfcore-seqinspector-logo-hex-light.png">
</picture>

**nf-core/seqinspector** is a bioinformatics pipeline that that processes raw sequence data (FASTQ) to provide comprehensive quality control. It can perform subsampling, quality assessment, duplication level analysis, and complexity evaluation on a per-sample basis, while also detecting adapter content, technical artifacts, and common biological contaminants. The pipeline generates detailed MultiQC reports with flexible output options, ranging from individual sample reports to project-wide summaries, making it particularly useful for sequencing core facilities and research groups with access to sequencing instruments. If provided, nf-core/seqinspector can also parse statistics from an Illumina run folder directory into the final MultiQC reports.
**nf-core/seqinspector** is a bioinformatics pipeline that processes raw sequence data (FASTQ) to provide comprehensive quality control.
It can perform subsampling, quality assessment, duplication level analysis, and complexity evaluation on a per-sample basis, while also detecting adapter content, technical artifacts, and common biological contaminants.
The pipeline generates detailed MultiQC reports with flexible output options, ranging from individual sample reports to project-wide summaries, making it particularly useful for sequencing core facilities and research groups with access to sequencing instruments.
If provided, nf-core/seqinspector can also parse statistics from an Illumina run folder directory into the final MultiQC reports.

<!-- TODO: add a search tool that accepts a tree for `Compatibility with Data`. -->

Expand Down Expand Up @@ -69,7 +60,9 @@ sample,fastq_1,fastq_2,rundir,tags
CONTROL_REP1,AEG588A1_S1_L002_R1_001.fastq.gz,AEG588A1_S1_L002_R2_001.fastq.gz,200624_A00834_0183_BHMTFYDRXX,lane1:project5:group2
```

Each row represents a fastq file (single-end) or a pair of fastq files (paired end).
Each row represents a fastq file (single-end with only `fastq_1`) or a pair of fastq files (paired end with `fastq_1` and `fastq_2`).
`rundir` is the path to the runfolder.
`tags` is a colon-separated list of tags that will be added to the MultiQC report for this `sample`.

Now, you can run the pipeline using:

Expand All @@ -93,11 +86,29 @@ For more details about the output files and reports, please refer to the

## Credits

nf-core/seqinspector was originally written by the Swedish [@NationalGenomicsInfrastructure](https://github.com/NationalGenomicsInfrastructure/) and [Clinical Genomics Stockholm](https://clinical.scilifelab.se/).
nf-core/seqinspector was originally written by [@agrima2010](https://github.com/agrima2010), [@Aratz](https://github.com/Aratz), [@FranBonath](https://github.com/FranBonath), [@kedhammar](https://github.com/kedhammar), and [@MatthiasZepper](https://github.com/MatthiasZepper) from the Swedish [@NationalGenomicsInfrastructure](https://github.com/NationalGenomicsInfrastructure/) and [Clinical Genomics Stockholm](https://clinical.scilifelab.se/).

We thank the following people for their extensive assistance in the development of this pipeline:

- [@adamrtalbot](https://github.com/adamrtalbot)
- [@alneberg](https://github.com/alneberg)
- [@beatrizsavinhas](https://github.com/beatrizsavinhas)
- [@ctuni](https://github.com/ctuni)
- [@edmundmiller](https://github.com/edmundmiller)
- [@EliottBo](https://github.com/EliottBo)
- [@KarNair](https://github.com/KarNair)
- [@kjellinjonas](https://github.com/kjellinjonas)
- [@mahesh-panchal](https://github.com/mahesh-panchal)
- [@matrulda](https://github.com/matrulda)
- [@maxulysse](https://github.com/maxulysse)
- [@mirpedrol](https://github.com/mirpedrol)
- [@nggvs](https://github.com/nggvs)
- [@nkongenelly](https://github.com/nkongenelly)
- [@Patricie34](https://github.com/Patricie34)
- [@pontushojer](https://github.com/pontushojer)
- [@ramprasadn](https://github.com/ramprasadn)
- [@rannick](https://github.com/rannick)
- [@torigiffin](https://github.com/torigiffin)

## Contributions and Support

Expand Down
Binary file modified assets/nf-core-seqinspector_logo_light.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 0 additions & 3 deletions conf/base.config
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@
*/

process {

// TODO nf-core: Check the defaults for all processes
cpus = { 1 * task.attempt }
memory = { 6.GB * task.attempt }
time = { 4.h * task.attempt }
Expand All @@ -24,7 +22,6 @@ process {
// These labels are used and recognised by default in DSL2 files hosted on nf-core/modules.
// If possible, it would be nice to keep the same label naming convention when
// adding in your local modules too.
// TODO nf-core: Customise requirements for specific processes.
// See https://www.nextflow.io/docs/latest/config.html#config-process-selectors
withLabel:process_single {
cpus = { 1 }
Expand Down
28 changes: 12 additions & 16 deletions conf/modules.config
Original file line number Diff line number Diff line change
Expand Up @@ -117,22 +117,18 @@ process {
publishDir = [
path: { "${params.outdir}/multiqc/group_reports" },
mode: params.publish_dir_mode,
saveAs: {
filename ->
switch (filename) {
case 'versions.yml':
null
break
case ~/\[TAG:.+\]_multiqc_(report\.html|plots|data)/:
def tag = (filename =~ /\[TAG:(.+)\]_multiqc_(report\.html|plots|data)/)[0][1]
def new_filename = filename.replaceFirst(
"(?<prefix>.*)\\[TAG:${tag}\\]_(?<suffix>multiqc_(report\\.html|plots|data).*)",
'${prefix}${suffix}')
"${tag}/${new_filename}"
break
default:
filename
}
saveAs: { filename ->
if (filename == 'versions.yml') {
return null
} else if (filename =~/\[TAG:.+\]_multiqc_(report\.html|plots|data)/) {
def tag = (filename =~ /\[TAG:(.+)\]_multiqc_(report\.html|plots|data)/)[0][1]
def new_filename = filename.replaceFirst(
"(?<prefix>.*)\\[TAG:${tag}\\]_(?<suffix>multiqc_(report\\.html|plots|data).*)",
'${prefix}${suffix}')
return "${tag}/${new_filename}"
} else {
return filename
}
}
]
}
Expand Down
Binary file modified docs/images/nf-core-seqinspector_logo_dark.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading