{"id":23934087,"url":"https://github.com/nf-core/configs","last_synced_at":"2026-01-16T06:57:26.121Z","repository":{"id":38421049,"uuid":"158843714","full_name":"nf-core/configs","owner":"nf-core","description":"Config files used to define parameters specific to compute environments at different Institutions","archived":false,"fork":false,"pushed_at":"2025-09-02T13:22:31.000Z","size":49680,"stargazers_count":103,"open_issues_count":18,"forks_count":326,"subscribers_count":174,"default_branch":"master","last_synced_at":"2025-09-05T08:55:52.020Z","etag":null,"topics":["bioinformatics","configuration","nextflow","nf-core","pipelines","workflows"],"latest_commit_sha":null,"homepage":"https://nf-co.re/configs","language":"Nextflow","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nf-core.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-11-23T14:37:07.000Z","updated_at":"2025-09-02T13:22:35.000Z","dependencies_parsed_at":"2023-09-22T10:26:06.397Z","dependency_job_id":"2459b32e-0275-4f15-b650-f24dea3c40b5","html_url":"https://github.com/nf-core/configs","commit_stats":{"total_commits":1826,"total_committers":189,"mean_commits":9.661375661375661,"dds":0.8926615553121577,"last_synced_commit":"ac0a08bf7cb08afadcc29d8d3dc08a5f74bfc0ea"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/nf-core/configs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nf-core%2Fconfigs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nf-core%2Fconfigs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nf-core%2Fconfigs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nf-core%2Fconfigs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nf-core","download_url":"https://codeload.github.com/nf-core/configs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nf-core%2Fconfigs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273774351,"owners_count":25165735,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-05T02:00:09.113Z","response_time":402,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bioinformatics","configuration","nextflow","nf-core","pipelines","workflows"],"created_at":"2025-01-06T00:30:09.805Z","updated_at":"2026-01-16T06:57:26.110Z","avatar_url":"https://github.com/nf-core.png","language":"Nextflow","funding_links":[],"categories":["Building"],"sub_categories":["Workflows"],"readme":"# [![nf-core/configs](docs/images/nfcore-configs_logo.png \"nf-core/configs\")](https://github.com/nf-core/configs) \u003c!-- omit in toc --\u003e\n\n[![Lint Status](https://github.com/nf-core/configs/workflows/Configs%20tests/badge.svg)](https://github.com/nf-core/configs/workflows/Configs%20tests/badge.svg)\n\nA repository for hosting Nextflow configuration files containing custom parameters required to run nf-core pipelines at [different institutions](https://nf-co.re/configs).\n\n## Table of contents \u003c!-- omit in toc --\u003e\n\n- [Using an existing config](#using-an-existing-config)\n  - [Configuration and parameters](#configuration-and-parameters)\n  - [Offline usage](#offline-usage)\n- [Adding a new config](#adding-a-new-config)\n  - [Testing](#testing)\n  - [Documentation](#documentation)\n  - [Uploading to `nf-core/configs`](#uploading-to-nf-coreconfigs)\n- [Adding a new pipeline-specific config](#adding-a-new-pipeline-specific-config)\n  - [Pipeline-specific institutional documentation](#pipeline-specific-institutional-documentation)\n  - [Pipeline-specific documentation](#pipeline-specific-documentation)\n  - [Enabling pipeline-specific configs within a pipeline](#enabling-pipeline-specific-configs-within-a-pipeline)\n  - [Create the pipeline-specific `nf-core/configs` files](#create-the-pipeline-specific-nf-coreconfigs-files)\n- [Help](#help)\n\n## Using an existing config\n\nThe Nextflow [`-c`](https://www.nextflow.io/docs/latest/config.html) parameter can be used with nf-core pipelines in order to load custom config files that you have available locally.\n\nHowever, if you or other people within your organisation are likely to be running nf-core pipelines regularly it may be a good idea to use/create a custom config file that defines some generic settings unique to the computing environment within your organisation.\n\nThis is where nf-core/configs comes in.\nNo need to write a custom config, simply run `nextflow run \u003cnf-core pipeline\u003e -profile \u003chpc_name\u003e` and everything is configured for you!\n\nAll currently supported HPCs and infrastructure can be seen on the [nf-core website](https://nf-co.re/configs).\n\n### Configuration and parameters\n\nThe config files hosted in this repository define a set of parameters which are specific to compute environments at different institutions but generic enough to be used with all nf-core pipelines.\n\nAll nf-core pipelines inherit the functionality provided by Nextflow, and as such custom config files can contain parameters/definitions that are available to both.\n\nFor example, if you have the ability to use [Singularity](https://sylabs.io/singularity/) on your HPC you can add and customize the Nextflow [`singularity`](https://www.nextflow.io/docs/latest/config.html#scope-singularity) scope in your config file.\nSimilarly, you can define a Nextflow [`executor`](https://www.nextflow.io/docs/latest/executor.html) depending on the job submission process available on your cluster.\nIn contrast, the `params` section in your custom config file will typically define parameters that are specific to nf-core pipelines.\n\nYou should be able to get a good idea as to how other people are customising the execution of their nf-core pipelines by looking at some of the config files in [`nf-core/configs`](https://github.com/nf-core/configs/tree/master/conf).\n\n### Offline usage\n\nTo use nf-core pipelines offline, we recommend using the `nf-core download` helper tool. This will download both the pipeline files and also the config profiles from `nf-core/configs`. The pipeline files are then edited to load the configs from their relative file path correctly.\n\n```bash\n# Download the workflow + transfer to offline cluster\nnf-core download rnaseq\nscp nf-core-rnaseq-3.0.tar.gz me@myserver.com:/path/to/workflows   # or however you prefer to transfer files to your offline cluster\n# Connect to offline cluster\nssh me@myserver.com\n# Extract workflow files\ncd /path/to/workflows\ntar -xzf nf-core-rnaseq-3.0.tar.gz\n# Run workflow\ncd /path/to/data\nnextflow run /path/to/workflows/nf-core-rnaseq-3.0/workflow -profile mycluster\n```\n\nIf required, you can instead download the nf-core/configs files yourself and customise the `--custom_config_base` / `params.custom_config_base` parameter in each pipeline to to set to the location of the configs directory.\n\n## Adding a new config\n\nIf you decide to upload your custom config file to `nf-core/configs` then this will ensure that your custom config file will be automatically downloaded, and available at run-time to all nf-core pipelines, and to everyone within your organisation.\n\nYou will simply have to specify `-profile \u003cconfig_name\u003e` in the command used to run the pipeline.\nSee [`nf-core/configs`](https://github.com/nf-core/configs/tree/master/conf) for examples.\n\nBefore adding your config file to nf-core/configs, we highly recommend writing and testing your own custom config file (as described [above](https://github.com/nf-core/configs#using-an-existing-config)), and then continuing with the next steps.\n\n\u003e [!WARNING]\n\u003e In the near future, nf-core/configs will require adherence to Nextflow's 'strict' syntax.\n\u003e Ensure you read the documentation [here](https://www.nextflow.io/docs/latest/config.html#config-syntax) and [here](https://www.nextflow.io/docs/latest/strict-syntax.html#configuration-syntax) on how to correctly write and format your config.\n\u003e Use of the [language server](https://github.com/nextflow-io/language-server) through the [VSCode Extension](https://nextflow.io/docs/latest/vscode.html) can be helpful for identifying syntax errors.\n\n\u003e [!NOTE]\n\u003e In your config file, please also make sure to add an extra `params` section with `params.config_profile_description`, `params.config_profile_contact` and `params.config_profile_url` set to reasonable values.\n\u003e Users will get information on who wrote the configuration profile then when executing a nf-core pipeline and can report back if there are things missing for example.\n\n\u003e [!NOTE]\n\u003e If you try to specify a shell environment variable within your profile, in some cases you may get an error during testing of something like `Unknown config attribute env.USER_SCRATCH -- check config file: /home/runner/work/configs/configs/nextflow.config` (where the bash environment variable is `$USER_SCRATCH`).\n\u003e This is because the GitHub runner used for CI testing will not have your institutional environment variables set. To fix this you can define this as an internal variable, and set a fallback value for that variable. A good example is in the [VSC_UGENT profile](`https://github.com/nf-core/configs/blob/69468e7ca769643b151a6cfd1ab24185fc341c06/conf/vsc_ugent.config#L2`).\n\n### Testing\n\nIf you want to add a new custom config file to `nf-core/configs` please test that your pipeline of choice runs as expected by using the [`-c`](https://www.nextflow.io/docs/latest/config.html) parameter.\n\n```bash\n## Example command for nf-core/rnaseq\nnextflow run nf-core/rnaseq --reads '*_R{1,2}.fastq.gz' --genome GRCh37 -c '/path/to/custom.config'\n```\n\n### Documentation\n\nYou will have to create a [Markdown document](https://www.markdownguide.org/getting-started/) outlining the details required to use the custom config file within your organisation.\nYou might orientate yourself using the [Template](docs/template.md) that we provide and filling out the information for your cluster there.\n\nSee [`nf-core/configs/docs`](https://github.com/nf-core/configs/tree/master/docs) for examples.\n\n### Uploading to `nf-core/configs`\n\n\u003e [!WARNING]\n\u003e Before you start, make sure you are a part of the nf-core GitHub organisation!\n\u003e More information on joining can be found [here](https://nf-co.re/join).\n\n[Fork](https://help.github.com/articles/fork-a-repo/) the [`nf-core/configs`](https://github.com/nf-core/configs/) repository to your own GitHub account.\nWithin the local clone of your fork:\n\n1.  **add** the custom config file to the [`conf/`](https://github.com/nf-core/configs/tree/master/conf) directory\n2.  **add** the documentation file to the [`docs/`](https://github.com/nf-core/configs/tree/master/docs) directory\n3.  **edit** and add your custom profile to the [`nfcore_custom.config`](https://github.com/nf-core/configs/blob/master/nfcore_custom.config) file in the top-level directory of the clone\n4.  **add** your profile name to GitHub Actions YAML `profile:` scope (under strategy matrix) in [`.github/workflows/main.yml`](.github/workflows/main.yml).\n\n    - If you forget to do this the tests will fail with the error in GitHub Actions:\n\n          ```bash\n          Tests don't seem to test these profiles properly. Please check whether you added the profile to the Github Actions testing YAML.\n          set(['\u003cprofile_name\u003e'])\n          ##[error]Process completed with exit code 1.\n          ```\n\n\u003e [!WARNING]\n\u003e In the near future, nf-core/configs will require adherence to Nextflow's 'strict' syntax.\n\u003e Ensure you read the documentation [here](https://www.nextflow.io/docs/latest/config.html#config-syntax) and [here](https://www.nextflow.io/docs/latest/strict-syntax.html#configuration-syntax) on how to correctly write and format your config.\n\u003e Use of the [language server](https://github.com/nextflow-io/language-server) through the [VSCode Extension](https://nextflow.io/docs/latest/vscode.html) can be helpful for identifying syntax errors.\n\nOnce all the files have been added and updated, commit and push these changes to your local clone on GitHub, and then [create a pull request](https://help.github.com/articles/creating-a-pull-request-from-a-fork/) on the `nf-core/configs` GitHub repo with the appropriate information.\n\nPlease request review from @nf-core/maintainers and/or on #request-review on the nf-core slack, and providing that everything adheres to nf-core guidelines we will endeavour to approve your pull request as soon as possible.\n\n\u003e [!NOTE]\n\u003e Once you get approval, you as the pull request author MUST merge the pull request.\n\u003e Community members cannot be held responsible for the use config on your infrastructure as they do not have permission to test on your infrastructure, therefore the PR author should be the person to merge in the config.\n\u003e If you do not see the 'merge' button at the bottom of the PR, ensure you're in nf-core GitHub organisation!\n\u003e More information on joining can be found [here](https://nf-co.re/join).\n\n## Adding a new pipeline-specific config\n\n\u003e [!WARNING]\n\u003e Before you start, make sure you are a part of the nf-core GitHub organisation!\n\u003e More information on joining can be found [here](https://nf-co.re/join).\n\nSometimes it may be desirable to have configuration options for an institute that are specific to a single nf-core pipeline.\nSuch options should not be added to the main institutional config, as this will be applied to all pipelines.\nInstead, we can create a pipeline-specific institutional config file.\n\nExisting pipeline-specific HPC and infrastructure configs can be seen on the [nf-core website](https://nf-co.re/configs) under the 'pipeline configs column.\n\n\u003e The following steps are similar to the instructions for standard institutional config, however using `pipeline` variants of folders e.g., `conf/pipeline/` or under `pipeline/`\n\n\u003e [!WARNING]\n\u003e Remember to replace the `\u003cPIPELINE\u003e` and `\u003cPROFILE\u003e` placeholders with the pipeline name and profile name in the following examples\n\nInstitutional configs work because the pipeline `nextflow.config` file loads the [`nf-core/configs/nfcore_custom.config` config file](https://github.com/nf-core/configs/blob/master/nfcore_custom.config), which in turn loads the institutional configuration file based on the profile `\u003cPROFILE\u003e` supplied on the command line.\n\nTo add in pipeline-specific institutional configs, we add a second `includeConfig` call in the pipeline `nextflow.config` file, which loads the `pipeline/\u003cPIPELINE\u003e.config` file from the [`nf-core/configs`](https://github.com/nf-core/configs) repo.\nThis file has `\u003cPIPELINE\u003e` specific institution configuration again with different profiles `\u003cPROFILE\u003e`.\n\nThe pipeline `nextflow.config` file should first load the generic institutional configuration file and then the pipeline-specific institutional configuration file.\nEach configuration file will add new params and overwrite the params already existing.\n\nNote that pipeline-specific configs are not required and should only be added if needed.\n\n### Enabling pipeline-specific configs within a pipeline\n\n\u003e [!WARNING] \u003e **This has to be done on a fork of the `nf-core/\u003cPIPELINE\u003e` repository.**\n\n[Fork](https://help.github.com/articles/fork-a-repo/) the `nf-core/\u003cPIPELINE\u003e` repository to your own GitHub account.\nWithin the local clone of your fork, if not already present, add the following to `nextflow.config` **after** the code that loads the generic nf-core/configs config file:\n\n```nextflow\n// Load nf-core/\u003cPIPELINE\u003e custom profiles from different Institutions\ntry {\n  includeConfig \"${params.custom_config_base}/pipeline/\u003cPIPELINE\u003e.config\"\n} catch (Exception e) {\n  System.err.println(\"WARNING: Could not load nf-core/config/\u003cPIPELINE\u003e profiles: ${params.custom_config_base}/pipeline/\u003cPIPELINE\u003e.config\")\n}\n```\n\nCommit and push these changes to your local clone on GitHub, and then [create a pull request](https://help.github.com/articles/creating-a-pull-request-from-a-fork/) on the `nf-core/\u003cPIPELINE\u003e` GitHub repo with the appropriate information.\n\nWe will be notified automatically when you have created your pull request, and providing that everything adheres to nf-core guidelines we will endeavour to approve your pull request as soon as possible.\n\n### Create the pipeline-specific `nf-core/configs` files\n\n\u003e [!WARNING]\n\u003e This has to be done on a fork of the [`nf-core/configs`](https://github.com/nf-core/configs/) repository.\n\n[Fork](https://help.github.com/articles/fork-a-repo/) the [`nf-core/configs`](https://github.com/nf-core/configs/) repository to your own GitHub account.\n\nAnd add or edit the following files in the local clone of your fork:\n\n- `pipeline/\u003cPIPELINE\u003e.config`\n\n  If not already created, create the `pipeline/\u003cPIPELINE\u003e.config` file, and add your custom profile to the profile scope\n\n  ```Groovy\n  profiles {\n    \u003cPROFILE\u003e { includeConfig \"${params.custom_config_base}/conf/pipeline/\u003cPIPELINE\u003e/\u003cPROFILE\u003e.config\" }\n  }\n  ```\n\n- `conf/pipeline/\u003cPIPELINE\u003e/\u003cPROFILE\u003e.config`\n\n  Add the custom configuration file to the `conf/pipeline/\u003cPIPELINE\u003e/` directory.\n  Make sure to add an extra `params` section with `params.config_profile_description`, `params.config_profile_contact` to the top of `pipeline/\u003cPIPELINE\u003e.config` and set to reasonable values.\n  Users will get information on who wrote the pipeline-specific configuration profile then when executing the nf-core pipeline and can report back if there are things missing for example.\n\n- `docs/pipeline/\u003cPIPELINE\u003e/\u003cPROFILE\u003e.md`\n\n  Add the documentation file to the `docs/pipeline/\u003cPIPELINE\u003e/` directory.\n  You will also need to edit and add your custom profile to the [`README.md`](https://github.com/nf-core/configs/blob/master/README.md) file in the top-level directory of the clone.\n\n\u003e [!WARNING]\n\u003e In the near future, nf-core/configs will require adherence to Nextflow's 'strict' syntax.\n\u003e Ensure you read the documentation [here](https://www.nextflow.io/docs/latest/config.html#config-syntax) and [here](https://www.nextflow.io/docs/latest/strict-syntax.html#configuration-syntax) on how to correctly write and format your config.\n\u003e Use of the [language server](https://github.com/nextflow-io/language-server) through the [VSCode Extension](https://nextflow.io/docs/latest/vscode.html) can be helpful for identifying syntax errors.\n\nCommit and push these changes to your local clone on GitHub, and then [create a pull request](https://help.github.com/articles/creating-a-pull-request-from-a-fork/) on the `nf-core/configs` GitHub repo with the appropriate information.\nIn the pull-request description, add a link to the repository specific pull-request(s) that use this new code.\n\nPlease request review from @nf-core/maintainers and/or on #request-review on the nf-core slack, and providing that everything adheres to nf-core guidelines we will endeavour to approve your pull request as soon as possible.\nBoth PRs will need to be merged at the approximately the same time.\n\n\u003e [!NOTE]\n\u003e Once you get approval, you as the pull request author MUST merge the pull request.\n\u003e Community members cannot be held responsible for the use config on your infrastructure as they do not have permission to test on your infrastructure, therefore the PR author should be the person to merge in the config.\n\u003e If you do not see the 'merge' button at the bottom of the PR, ensure you're in nf-core GitHub organisation!\n\u003e More information on joining can be found [here](https://nf-co.re/join).\n\n## Help\n\nIf you have any questions or issues please send us a message on [Slack](https://nfcore.slack.com/channels/configs).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnf-core%2Fconfigs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnf-core%2Fconfigs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnf-core%2Fconfigs/lists"}