Open
Description
In some cases, people want to use the nf-core template and associated best practices (and updates), but constantly need to apply the same set of modifications when creating new pipelines. In this situation, it would be nice to be able to supply a "child template" that overwrites specific desired template files, and/or adds additional ones.
Template overrides are a pretty standard mechanism, see examples such as mkdocs, MultiQC and more.
Workflow should be:
- Create a new repository for the custom template. Add any files that you want to overwrite.
- For example, if you want a custom readme but everything else the same, create just a
README.md
file and nothing else
- For example, if you want a custom readme but everything else the same, create just a
- Run
nf-core create --template https://github.com/myorg/mytemplate
- The create command generates a pipeline as normal. It then renders the custom repo template afterwards, and copies these generated files on top of the vanilla pipeline output.
- The template git repo is noted in
.nf-core.yml
so that the same process can be repeated for pipeline syncs (and even linting?)
Will need additional docs to describe the various template variables that are available for use, such as {{ name }}
etc.