• Home
  • Pipelines
  • Resources
    • Components
    • Modules
    • Subworkflows

    • Configs
    • Shared configs

    • Plugins & Actions
    • nft-utils
    • setup-nextflow
    • setup-nf-test
  • Docs
  • Community
    • What's happening
    • Advisories
    • Blog

    • Events
    • Bytesize Talks
    • Hackathons
    • Training
    • Talks
    • Weekly Helpdesks

    • Programs and groups
    • Special interest groups
    • In-progress RFCs
    • Mentorships
    • Contributors
    • Shop new
    • Connect game 👾
  • About
    • About nf-core
    • Stickers
    • Governance
    • Marketing
    • Code of conduct

    • Publications
    • Statistics

    • Join nf-core
    • Select theme
    • Light
    • Dark
    • System
    • Select theme
    • Light
    • Dark
    • System
    Join nf-core Join nf-core
  1. Docs

Developing

Create and maintain nf-core pipelines, components, and configs

Overview

Overview

Developing nf-core pipelines

Components

Automated methods

Customize automated methods descriptions in MultiQC reports

Create components

Writing modules and subworkflows for nf-core

Cross organisational components

Use modules from multiple organisations in subworkflows

ext arguments

Configure tool-specific options in nf-core components

Meta maps

Storing sample metadata in nf-core components

Setting custom remotes

Set a custom remote for modules and subworkflows

Containers

ARM64 on Bioconda

Enabling existing Bioconda and Conda-forge packages to work on ARM64 architecture

Seqera Containers

Using Seqera Containers in nf-core modules

Documentation

Code formatting

Using Prettier and Ruff to maintain consistent code style

Harshil alignment

Formatting your Nextflow code to make nf-core core members happy

Markdown

Special content elements on nf-co.re

Style guide

nf-core style guide rules

Topic types

Documentation topic types

Institutional profiles

Overview

Write and contribute institutional configuration profiles

Configuration

Structuring your institutional profile configuration

Documentation

What to include in your institutional profile documentation

File structure

Which files to create or modify for your institutional profile

nf-core/configs outside nf-core

Integrating institutional profiles into custom workflows

Preparing to write

Information you need before creating an institutional profile

Testing

Testing your institutional profile before submission

Migration guides

Migrating to topic channels

Migrating nf-core modules and pipelines to use topic channels

Pipelines

Release procedure

A step-by-step guide for releasing a nf-core pipeline

Adding modules

Add nf-core modules to pipelines

External use

Guidelines for using nf-core code and infrastructure outside the organisation

Renaming branches

Switch your pipeline's default branch from master to main

Template files

Description of the elements of an nf-core template

Template syncs

Overview

How nf-core pipelines are kept up to date with community standards

Fixing a broken TEMPLATE branch

Fix a broken TEMPLATE branch

Manually syncing your pipeline

Manually synchronise your pipeline with the latest template

Merging automated PRs

Merge automated PRs after a new tools release

Setting up a pipeline sync retrospectively

Set up a correct TEMPLATE branch in your pipeline repository

Testing

Overview

Testing nf-core components with nf-test

Advanced

Complex assertion patterns and troubleshooting

Assertions

nf-core guidelines and common patterns

  • Get started
    • What is nf-core?
    • Environment setup
      • Overview
      • Nextflow
      • Software dependencies
      • nf-core tools
      • VS Code
      • Dev Containers
      • Troubleshooting
    • Run your first pipeline
  • Running
    • Overview
    • Advanced topics
      • Google Colab
      • Managing work directory growth
    • Configuration
      • Overview
      • System requirements
    • Reference genomes
    • Running pipelines offline
  • Developing
    • Overview
    • Components
      • Automated methods
      • Create components
      • Cross organisational components
      • ext arguments
      • Meta maps
      • Setting custom remotes
    • Containers
      • ARM64 on Bioconda
      • Seqera Containers
    • Documentation
      • Code formatting
      • Harshil alignment
      • Markdown
      • Style guide
      • Topic types
    • Institutional profiles
      • Overview
      • Configuration
      • Documentation
      • File structure
      • nf-core/configs outside nf-core
      • Preparing to write
      • Testing
    • Migration guides
      • Migrating to topic channels
    • Pipelines
      • Release procedure
      • Adding modules
      • External use
      • Renaming branches
      • Template files
    • Template syncs
      • Overview
      • Fixing a broken TEMPLATE branch
      • Manually syncing your pipeline
      • Merging automated PRs
      • Setting up a pipeline sync retrospectively
    • Testing
      • Overview
      • Advanced
      • Assertions
  • Contributing
    • Overview
    • Components
    • Contribution types
    • Contributor's list
    • Deprecating modules
    • Documentation
    • Existing pipelines
    • New pipelines
    • Project proposals
    • Reviewing pull requests
      • nf-core bot
      • Review checklists
        • Reviewing components
        • Reviewing nf-core/tools
        • Reviewing pipeline releases
  • Specifications
    • Overview
    • Components
      • Overview
      • Modules
        • General
        • Naming conventions
        • Input/output Options
        • Documentation
        • Parameters
        • Resource requirements
        • Software
        • Testing
        • Misc
      • Subworkflows
        • General
        • Naming conventions
        • Input output options
        • Subworkflow parameters
        • Documentation
        • Testing
        • Misc
    • Pipelines
      • Overview
      • Recommendations
        • Publication credit
        • Testing
        • Bioconda
        • Build with community
        • Cloud compatible
        • Custom containers
        • DOIs
        • File formats
      • Requirements
        • Acknowledgements
        • CI testing
        • Community owned
        • Docker
        • Docs
        • Git branches
        • Identity branding
        • Keywords
        • Linting
        • Minimum inputs
        • MIT license
        • Nextflow
        • Parameters
        • RO Crate
        • Semantic versioning
        • Single command
        • Use the template
        • Workflow name
        • Workflow size
        • Workflow specificity
    • Reviews
      • Overview
      • Request reviewers
      • Rapid merge
      • Review scope
      • Commit strategy
    • Test data
      • Overview
      • General
      • Modules
  • Community
    • Overview
    • Advisories
    • Brand
      • Overview
      • Colours
      • Fonts
      • Logos
      • Presentations
      • Workflow schematics
    • Governance
      • Core team tasks
      • Maintainers tasks
    • Regulatory
      • Overview
      • Checklist
    • Terminology
  • nf-core/tools
    • API
    • CLI
      • Installation
      • Pipelines
        • create
        • list
        • launch
        • create params file
        • download
        • licences
        • rocrate
        • lint
        • schema
        • bump version
        • sync
        • create logo
      • Modules
        • list
        • info
        • install
        • update
        • remove
        • patch
        • create
        • lint
        • test
        • bump versions
      • Subworkflows
        • list
        • info
        • install
        • update
        • remove
        • create
        • lint
        • test
      • Test datasets
        • list
        • list branches
        • search
      • TUI
Making awesome workflows since 2018.

Supported by:

+ + +
See the source code for this website on GitHub:
https://github.com/nf-core/website