Repository to host tool-specific module files for the Nextflow DSL2 community!
Find a file
Sébastien Guizard 4ec8b025bd
New module: LIMA (#719)
* 📦 NEW: Add module lima

* 👌 IMPROVE: Move .pbi output to reports channel

* 🐛 FIX: Fix report channel definition

* 👌IMPROVE; Remove options from command line

update test script with removed options

* 👌 IMPROVE: Add some pacbio test files

* 🐛 FIX: Add Pacbio index to test_data.config

* 👌 IMPROVE: Re add 10000 data test

* 🐛 FIX: Add pbi input

* 👌 IMPROVE: Add parallelization to lima

* 👌 IMPROVE: Add some pbindex

* 🐛 FIX: Add pbi extension to files

* 👌 IMPROVE: The accept one channel (primers move into the first channel)

* 👌 IMPROVE: Assign a value channel for pimers 

Improve code workflow readability

* 👌 IMPROVE: Update .gitignore

* 👌 IMPROVE: Update module to last template version

* 🐛 FIX: Correct Singularity and Docker URL

* 👌 IMPROVE: Update to the last version of modules template

* 👌 IMPROVE: Update test_data.config

* 👌 IMPROVE: Remove pbi from input files

* 👌 IMPROVE: Final version of test datasets config

* 👌 IMPROVE: Remove useless index + Fix Typos

* 🐛 FIX: Fill contains args

* 📦 NEW: Add module lima

* 👌 IMPROVE: Move .pbi output to reports channel

* 🐛 FIX: Fix report channel definition

* 👌IMPROVE; Remove options from command line

update test script with removed options

* 🐛 FIX: Add pbi input

* 👌 IMPROVE: Add parallelization to lima

* 👌 IMPROVE: Add some pacbio test files

* 🐛 FIX: Add Pacbio index to test_data.config

* 👌 IMPROVE: Re add 10000 data test

* 👌 IMPROVE: Add some pbindex

* 🐛 FIX: Add pbi extension to files

* 👌 IMPROVE: The accept one channel (primers move into the first channel)

* 👌 IMPROVE: Assign a value channel for pimers 

Improve code workflow readability

* 👌 IMPROVE: Update .gitignore

* 👌 IMPROVE: Update module to last template version

* 🐛 FIX: Correct Singularity and Docker URL

* 👌 IMPROVE: Update to the last version of modules template

* 👌 IMPROVE: Update test_data.config

* 👌 IMPROVE: Remove pbi from input files

* 👌 IMPROVE: Final version of test datasets config

* 👌 IMPROVE: Remove useless index + Fix Typos

* 🐛 FIX: Fill contains args

* 👌 IMPROVE: Add channel for each output

* 👌 IMPROVE: Remove comments

* 📦 NEW: Add module lima

* 👌 IMPROVE: Move .pbi output to reports channel

* 🐛 FIX: Fix report channel definition

* 👌IMPROVE; Remove options from command line

update test script with removed options

* 🐛 FIX: Add pbi input

* 👌 IMPROVE: Add parallelization to lima

* 👌 IMPROVE: Add some pacbio test files

* 🐛 FIX: Add Pacbio index to test_data.config

* 👌 IMPROVE: Re add 10000 data test

* 👌 IMPROVE: Add some pbindex

* 🐛 FIX: Add pbi extension to files

* 👌 IMPROVE: The accept one channel (primers move into the first channel)

* 👌 IMPROVE: Assign a value channel for pimers 

Improve code workflow readability

* 👌 IMPROVE: Update module to last template version

* 🐛 FIX: Correct Singularity and Docker URL

* 👌 IMPROVE: Update to the last version of modules template

* 👌 IMPROVE: Update test_data.config

* 👌 IMPROVE: Remove pbi from input files

* 🐛 FIX: Fill contains args

* 📦 NEW: Add module lima

* 👌 IMPROVE: Move .pbi output to reports channel

* 🐛 FIX: Fix report channel definition

* 👌IMPROVE; Remove options from command line

update test script with removed options

* 🐛 FIX: Add pbi input

* 👌 IMPROVE: Add parallelization to lima

* 👌 IMPROVE: Add some pacbio test files

* 🐛 FIX: Add Pacbio index to test_data.config

* 👌 IMPROVE: Re add 10000 data test

* 👌 IMPROVE: Add some pbindex

* 🐛 FIX: Add pbi extension to files

* 👌 IMPROVE: The accept one channel (primers move into the first channel)

* 👌 IMPROVE: Assign a value channel for pimers 

Improve code workflow readability

* 👌 IMPROVE: Update module to last template version

* 🐛 FIX: Correct Singularity and Docker URL

* 👌 IMPROVE: Update to the last version of modules template

* 👌 IMPROVE: Update test_data.config

* 👌 IMPROVE: Remove pbi from input files

* 👌 IMPROVE: Final version of test datasets config

* 👌 IMPROVE: Remove useless index + Fix Typos

* 🐛 FIX: Fill contains args

* 👌 IMPROVE: Add channel for each output

* 👌 IMPROVE: Remove comments

* 🐛 FIX: Clean test_data.config

* Update modules/lima/main.nf

Add meta to each output

Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>

* Update modules/lima/main.nf

Remove useless parenthesis

Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>

* 🐛 FIX: Keep version number only

* 🐛 FIX: Reintegrate prefix variable and use it to define output file name

* 👌 IMPROVE: add suffix arg to check output files names

* 👌 IMPROVE: Use prefix for output filename

* 🐛 FIX: Set optional output

Allow usage of different input formats

* 👌 IMPROVE: Update meta file

* 👌 IMPROVE: Update test

One test for each input file type

* 👌 IMPROVE: add fasta, fastq.gz, fastq, fastq.gz test files

* 👌 IMPROVE: Update with last templates / Follow new version.yaml rule

* 🐛 FIX: Fix typos and include getProcessName function

* 👌 IMPROVE: Update .gitignore

* 👌 IMPROVE: Using suffix to manage output was not a my best idea

Add a bash code to detect extension and update output file name

* 👌 IMPROVE: clean code

Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>
Co-authored-by: Gregor Sturm <mail@gregor-sturm.de>
Co-authored-by: Mahesh Binzer-Panchal <mahesh.binzer-panchal@nbis.se>
2021-09-27 16:14:35 +01:00
.github Run CI only on pull-requests and on the master-branch. (#743) 2021-09-27 08:03:30 +02:00
docs/images feat: remove social preview image to use GitHub OpenGraph (#461) 2021-04-26 11:59:12 +01:00
modules New module: LIMA (#719) 2021-09-27 16:14:35 +01:00
tests New module: LIMA (#719) 2021-09-27 16:14:35 +01:00
.editorconfig Update .editorconfig 2020-06-15 16:47:42 +02:00
.gitattributes Fill out repo 2019-07-26 10:19:07 +01:00
.gitignore New module: LIMA (#719) 2021-09-27 16:14:35 +01:00
.markdownlint.yml Update .markdownlint.yml 2021-02-17 01:15:21 +01:00
.nf-core.yml Add module: bamaligncleaner (#676) 2021-09-15 10:31:49 +02:00
LICENSE Fill out repo 2019-07-26 10:19:07 +01:00
README.md Typo fix 2021-09-20 13:00:11 +02:00

nf-core/modules

Nextflow run with conda run with docker run with singularity

GitHub Actions Coda Linting Get help on Slack

Follow on Twitter Watch on YouTube

THIS REPOSITORY IS UNDER ACTIVE DEVELOPMENT. SYNTAX, ORGANISATION AND LAYOUT MAY CHANGE WITHOUT NOTICE!

A repository for hosting Nextflow DSL2 module files containing tool-specific process definitions and their associated documentation.

Table of contents

Using existing modules

The module files hosted in this repository define a set of processes for software tools such as fastqc, bwa, samtools etc. This allows you to share and add common functionality across multiple pipelines in a modular fashion.

We have written a helper command in the nf-core/tools package that uses the GitHub API to obtain the relevant information for the module files present in the modules/ directory of this repository. This includes using git commit hashes to track changes for reproducibility purposes, and to download and install all of the relevant module files.

  1. Install the latest version of nf-core/tools (>=2.0)

  2. List the available modules:

    $ nf-core modules list remote
    
                                          ,--./,-.
          ___     __   __   __   ___     /,-._.--~\
    |\ | |__  __ /  ` /  \ |__) |__         }  {
    | \| |       \__, \__/ |  \ |___     \`-._,-`-,
                                          `._,._,'
    
    nf-core/tools version 2.0
    
    INFO     Modules available from nf-core/modules (master):                       pipeline_modules.py:164
    
    ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
    ┃ Module Name                    ┃
    ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
    │ bandage/image                  │
    │ bcftools/consensus             │
    │ bcftools/filter                │
    │ bcftools/isec                  │
    ..truncated..
    
  3. Install the module in your pipeline directory:

    $ nf-core modules install fastqc
    
                                          ,--./,-.
          ___     __   __   __   ___     /,-._.--~\
    |\ | |__  __ /  ` /  \ |__) |__         }  {
    | \| |       \__, \__/ |  \ |___     \`-._,-`-,
                                          `._,._,'
    
    nf-core/tools version 2.0
    
    INFO     Installing fastqc                                                      pipeline_modules.py:213
    INFO     Downloaded 3 files to ./modules/nf-core/modules/fastqc                 pipeline_modules.py:236
    
  4. Import the module in your Nextflow script:

    #!/usr/bin/env nextflow
    
    nextflow.enable.dsl = 2
    
    include { FASTQC } from './modules/nf-core/modules/fastqc/main' addParams( options: [:] )
    
  5. Remove the module from the pipeline repository if required:

    $ nf-core modules remove fastqc
    
                                          ,--./,-.
          ___     __   __   __   ___     /,-._.--~\
    |\ | |__  __ /  ` /  \ |__) |__         }  {
    | \| |       \__, \__/ |  \ |___     \`-._,-`-,
                                          `._,._,'
    
    nf-core/tools version 2.0
    
    INFO     Removing fastqc                                                        pipeline_modules.py:271
    INFO     Successfully removed fastqc                                            pipeline_modules.py:285
    
  6. Check that a locally installed nf-core module is up-to-date compared to the one hosted in this repo:

    $ nf-core modules lint fastqc
    
                                          ,--./,-.
          ___     __   __   __   ___     /,-._.--~\
    |\ | |__  __ /  ` /  \ |__) |__         }  {
    | \| |       \__, \__/ |  \ |___     \`-._,-`-,
                                          `._,._,'
    
    nf-core/tools version 2.0
    
    INFO     Linting pipeline: .                                                    lint.py:104
    INFO     Linting module: fastqc                                                 lint.py:106
    
    ╭─────────────────────────────────────────────────────────────────────────────────╮
    │ [!] 1 Test Warning                                                              │
    ╰─────────────────────────────────────────────────────────────────────────────────╯
    ╭──────────────┬───────────────────────────────┬──────────────────────────────────╮
    │ Module name  │ Test message                  │ File path                        │
    ├──────────────┼───────────────────────────────┼──────────────────────────────────┤
    │ fastqc       │ Local copy of module outdated │ modules/nf-core/modules/fastqc/  │
    ╰──────────────┴────────────────────────────── ┴──────────────────────────────────╯
    ╭──────────────────────╮
    │ LINT RESULTS SUMMARY │
    ├──────────────────────┤
    │ [✔]  15 Tests Passed │
    │ [!]   1 Test Warning │
    │ [✗]   0 Test Failed  │
    ╰──────────────────────╯
    

Adding new modules

If you wish to contribute a new module, please see the documentation on the nf-core website.

Please be kind to our code reviewers and submit one pull request per module :)

Help

For further information or help, don't hesitate to get in touch on Slack #modules channel (you can join with this invite).

Citation

If you use the module files in this repository for your analysis please you can cite the nf-core publication as follows:

The nf-core framework for community-curated bioinformatics pipelines.

Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.

Nat Biotechnol. 2020 Feb 13. doi: 10.1038/s41587-020-0439-x.