Introduction to nf-core
nf-core
What is nf-core ?
According to their website:
A community effort to collect a curated set of analysis pipelines built using nextflow
The nf
stands for nextflow and core
for core facilities because they are at the origin of nf-core.
People from those facilities started to develop pipelines in Nextflow and got in touch with other facilities that were doing the same thing. So they started a community to create those pipelines together without reinventing the wheel.
It contains:
- 83 pipelines released
- 41 pipelines under development
- 12 pipelines archived
Nf-core offers pipelines with interesting features:
When developing a pipeline aiming to integrate the nf-core pipeline set it’s important to: - Communicate with the nf-core community - Cooperate by enriching existing pipelines with new tools or features instead of duplicating them: Only one pipeline per analysis type.
You can go to https://nf-co.re/pipelines/ to browse their pipelines:
Finally nf-core is more than just pipelines, it also provides:
- Documentation: guidelines, tutorial, videos
- Modules: single tool wrappers
- Subworkflows: multi tools wrappers
- Config: Shared infrastructure, including one for the PSMN maintained by Laurent Modolo.
- Test datasets: test data for everyone
- Tools
nf-core tools
the nf-core community has built a tool in Python named tools
.
This tool is useful for: - running pipelines - writing pipelines - testing/automation
It allows to run pipelines, write pipelines by starting from a template and make tests and automation
nf-core - pipeline parts
nf-core contains 1565 well documented modules. Modules correspond to a nextflow process along with other files.
To browse their available modules go on https://nf-co.re/modules/.
Documentation of the FastQC modules:
nf-core contains 78 subworkflows that you can browse here. Subworkflows are sets of assembled modules.
Modules and subworkflows can be used by anyone in Nextflow pipelines
nf-core objectives: - develop with the community - Use a common template - Collaborate, don’t duplicate
Guidelines to build a nf-core pipeline
- Nextflow based
- Common structure (template)
- Stable release tag
- MIT license
- Software bundled for reproducibility
- Continuous Integration testing
- lagom (Swedish): pipelines of reasonable size
For more information, visit the adding pipeline page on the nf-core website.
nf-core resources
The nf-core community organizes events every year including training. You can check for those events on this page.
You can join the nf-core community with this link and ask questions there.
Practicals
For the practical of this session. We are going to do the hello nf-core course on the Nextflow training website.