<a href="https://github.com/nf-wrap/main"><img src="https://raw.githubusercontent.com/nf-wrap/main/main/docs/images/nf-wrap_logo-long-dark.png" width="60%"></img></a> Maxime U Garcia ▸ <a href="https://github.com/maxulysse" style="color:white;" ><i class="fa fa-github"></i> @maxulysse</a> <a href="https://seqera.io/" style="color:white;" >Seqera Labs</a> ▸ Barcelona | Stockholm --- ## Disclaimer * Tiny side project * Haven't done much more than POC-ing --- ![](https://media.giphy.com/media/Jn9Td3EAh6cJfiyg60/giphy.gif) --- ## Beginning Random user on nf-core Slack: > How can I run just FASTP, not the whole pipeline? --- ## Me ![](https://media.giphy.com/media/1M9fmo1WAFVK0/giphy.gif) --- ## Next day Another random user on nf-core Slack: > How can I run just FASTQC, not the whole pipeline? --- ## Me again ![](https://media.giphy.com/media/3cXmze4Y8igXdnkc3U/giphy.gif) --- ## Realizing pattern after 3rd request on the same week ![](https://media.giphy.com/media/3o6Mbj2w67HnPQKgcE/giphy.gif) --- ## What was needed * Simple wrapper * Around nf-core/modules * To use conda/docker/singularity * Community supported code * Easy to launch --- ## nf-core/modules * Wrapper <i class="fa fa-check" style="color:green;"></i>: [<i class="fa fa-github"></i> nf-core/modules/fastqc/main.nf#L1-L20](https://github.com/nf-core/modules/blob/e53ca1ea41b5e9ab001ac84fbdb10ebcc852c5b8/tests/modules/nf-core/fastqc/main.nf#L1-L20) * <i class="fa fa-remove" style="color:red;"></i> Only for tests * Simple command <i class="fa fa-remove" style="color:red;"></i>: [<i class="fa fa-github"></i> nf-core/modules/fastqc/test.yml#L2](https://github.com/nf-core/modules/blob/e53ca1ea41b5e9ab001ac84fbdb10ebcc852c5b8/tests/modules/nf-core/fastqc/test.yml#L2) * ``` nextflow run ./tests/modules/nf-core/fastqc / -profile <profile> / -entry test_fastqc_paired_end / -c <configfiles> / ... ``` * <i class="fa fa-remove" style="color:red;"></i> Script and configs are local --- ## nf-wrap POC * Wrapper <i class="fa fa-check" style="color:green;"></i> * Simple command <i class="fa fa-check" style="color:green;"></i> * ``` nextflow run nf-wrap/main / -profile <profile> / --tools <tool> / --input <file> / --outdir results / ... ``` --- ![](https://media.giphy.com/media/KzQFxzXwnRgFbdHqkc/giphy.gif) --- ## Extra features * Bad logo and ASCII art * `args` inherently exposed as `params.args` * Supports nf-core/configs * Supports AWS iGenomes * Handles single/pair of files/samplesheet * Run small subworkflows * Works with tower --- ## Has it been used\? * Launched single processes instead of a pipeline * Good to debug / investigate / track issues * Checked `md5sum` of all input files from nf-core/rnaseq --- ## Potential ![](https://media.giphy.com/media/UoCA5JIbXgq9q/giphy.gif) --- ## Unlimited * Decentralized Galaxy on your own system * (Cloud/HPC/laptop) --- ## Issues ![](https://media.giphy.com/media/4Hx5nJBfi8FzFWxztb/giphy.gif) --- ## How to go forward\? * No API for nf-core/modules * So hard to automate * Manually curated * Might need community support --- ## Some ideas\? * Parsing the `meta.yml` files to create wrapper * IMO - might be better to API-ize nf-core/modules * One branch per tool * IMO - Will be hard to maintain/sync --- ## Special thanks * [Friederike Hanssen](https://github.com/FriederikeHanssen) * [Edmund Miller](https://github.com/Emiller88) * [nf-core community](https://github.com/nf-core) * [Rob Syme](https://github.com/robsyme) * [Harshil Patel](https://github.com/drpatelh) * [Marcel Ribeiro-Dantas](https://github.com/mribeirodantas) * [Ben Sherman](https://github.com/bentsherman) --- ## Any questions/ideas\?
{"metaMigratedAt":"2023-06-18T02:32:39.892Z","metaMigratedFrom":"YAML","title":"nf-wrap","breaks":true,"contributors":"[{\"id\":\"fb193497-1111-470c-a594-827d34b6f673\",\"add\":5054,\"del\":1150}]"}
    177 views