Skip to content

Commit

Permalink
Merge pull request #2886 from mashehu/tools-3_1_0-blog-post
Browse files Browse the repository at this point in the history
tools release blogpost and ro-crate docs
  • Loading branch information
mashehu authored Dec 12, 2024
2 parents 7921de4 + c68d1d3 commit fa43741
Show file tree
Hide file tree
Showing 4 changed files with 149 additions and 19 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,25 +14,25 @@ describing what each file is and what it does.

You will find the following files in each nf-core pipeline. They are automatically generated, when running `nf-core pipelines create`.

| Filename | Description  |
| ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `main.nf` | This is the main nextflow file which will get executed if the pipeline is run. Typically, parameters are initialized and validated in this script before a workflow from the `workflows/` directory is called for execution. |
| `nextflow.config` | The main nextflow configuration file. It contains the default pipeline parameters, nextflow configuration options and information like pipeline and minimum nextflow version, among others. The `nextflow.config` also defines different configuration profiles that can be used to run the pipeline. See the [Configuration docs](/docs/usage/getting_started/configuration) for more information. |
| `README.md` | Basic information about the pipeline and usage |
| `nextflow_schema.json` | The JSON schema file is used for pipeline parameter specification. This is automatically created using the `nf-core pipelines schema build` command. It is used for printing command-line help, validating input parameters, building the website docs and for building pipeline launch interfaces (web and cli). |
| `CHANGELOG.md` | Information about the changes made to the pipeline for each release. |
| `LICENSE` | The license - should be MIT |
| `CODE_OF_CONDUCT.md` | The nf-core code of conduct. |
| `CITATIONS.md` | All citations needed when using the pipeline |
| `.gitattributes` | Git settings, primarily getting the `.config` files to render with Nextflow syntax highlighting on <github.com> |
| `.gitignore` | Files that should be ignored by git. |
| `.editorconfig` | Editorconfig file that helps assuring consistent coding style |
| `.prettierrc.yml` | Prettier lint configuration file to assure consistent markdown files |
| `.prettierignore` | Files that should be ignored by prettier |
| `modules.json` | This file holds information (e.g. version) about all the modules in the pipeline that have been installed from `nf-core/modules` |
| `.nf-core.yml` | Indicates the type of repository (pipeline or modules repo) |
| `.gitpod.yml` | Config file to define online working environment with <https://www.gitpod.io> |
| `pyproject.toml` | Config file for Python. Mostly used to configure linting of `bin/check_samplesheet.py` with Black |
| Filename | Description  |
| ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `main.nf` | This is the main nextflow file which will get executed if the pipeline is run. Typically, parameters are initialized and validated in this script before a workflow from the `workflows/` directory is called for execution. |
| `nextflow.config` | The main nextflow configuration file. It contains the default pipeline parameters, nextflow configuration options and information like pipeline and minimum nextflow version, among others. The `nextflow.config` also defines different configuration profiles that can be used to run the pipeline. See the [Configuration docs](/docs/usage/getting_started/configuration) for more information. |
| `README.md` | Basic information about the pipeline and usage |
| `nextflow_schema.json` | The JSON schema file is used for pipeline parameter specification. This is automatically created using the `nf-core pipelines schema build` command. It is used for printing command-line help, validating input parameters, building the website docs and for building pipeline launch interfaces (web and cli). |
| `CHANGELOG.md` | Information about the changes made to the pipeline for each release. |
| `LICENSE` | The license - should be MIT |
| `CODE_OF_CONDUCT.md` | The nf-core code of conduct. |
| `CITATIONS.md` | All citations needed when using the pipeline |
| `.gitattributes` | Git settings, primarily getting the `.config` files to render with Nextflow syntax highlighting on <github.com> |
| `.gitignore` | Files that should be ignored by git. |
| `.editorconfig` | Editorconfig file that helps assuring consistent coding style |
| `.prettierrc.yml` | Prettier lint configuration file to assure consistent markdown files |
| `.prettierignore` | Files that should be ignored by prettier |
| `modules.json` | This file holds information (e.g. version) about all the modules in the pipeline that have been installed from `nf-core/modules` |
| `.nf-core.yml` | File to indicate the type of repository (pipeline or modules) and to hold information about the pipeline for nf-core/tools, e.g. linting exceptions, skipped template features, etc. |
| `.gitpod.yml` | Config file to define online working environment with <https://www.gitpod.io> |
| `ro-crate-metadata.json` | A RO Crate metadata file, which is used to describe the pipeline. For more information, see [RO Crate](https://www.researchobject.org/ro-crate/) |

## Directories

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
title: Research Object Crate
subtitle: Pipelines must come with their own Research Object (RO) Crate
shortTitle: RO Crate
---

All nf-core pipelines MUST come with their own Research Object (RO) Crate.
RO Crate is an open-source standard which we use to describe our pipelines and their components in a structured way and helps with automated provenance tracking.

:::note
The RO Crate generated with nf-core/tools describes the pipeline as a whole, not pipeline runs.
For that kind of provenance, use the new [nf-prov plugin](https://github.com/nextflow-io/nf-prov), which is currently in development.
:::

More information can be found [here](https://www.researchobject.org/ro-crate/).
17 changes: 17 additions & 0 deletions sites/docs/src/content/docs/nf-core-tools/pipelines/rocrate.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
title: Create a ROCrate
subtitle: Create a Research Object (RO) Crate
shortTitle: rocrate
---

The `nf-core pipelines rocrate` command generates a Research Object (RO) Crate for your pipeline.
RO Crates are an open-source standard which in this case describe a pipeline and its components in a structured way and help with automated provenance tracking.

You can generate and update a RO Crate using the `nf-core pipelines rocrate` command (which is automatically run with `nf-core pipelines create` and `nf-core pipelines sync`).

This command takes a pipeline directory and attempts to generate a RO Crate for it, relying heavily on the [repo2rocrate library](https://github.com/crs4/repo2rocrate).

:::note
The `author` field is populated based on the git contributors.
The ORCID ID is currently identified by searching the ORCID API for a unique match of the contributor's full name provided from GitHub.
:::
Loading

0 comments on commit fa43741

Please sign in to comment.