Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: Migrating nf-core modules and pipelines to use topic channels
shortTitle: Migrating to topic channels
---

[Topic channels](https://www.nextflow.io/docs/latest/process-typed.html#topics) are a new feature in Nextflow that allow for more flexible and efficient handling of version outputs across modules and pipelines.
[Topic channels](https://docs.seqera.io/nextflow/process-typed#topics) are a new feature in Nextflow that allow for more flexible and efficient handling of version outputs across modules and pipelines.
Instead of collecting versions through YAML files, topic channels enable direct version tracking through structured channel outputs.

This migration guide provides step-by-step instructions for three different scenarios:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ You will need the following to get started:
- Bash version 3.2 or later
- Java version 17 or later (up to Java 25)

For the latest instructions, see the [Nextflow installation guide](https://www.nextflow.io/docs/latest/install.html).
For the latest instructions, see the [Nextflow installation guide](https://docs.seqera.io/nextflow/install).
:::

## Install Java
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ To run `nf-core/demo` with your own sequencing data:
### Use parameter files

:::tip
Check out the Nextflow documentation for [Parameter Files](https://www.nextflow.io/docs/latest/cli.html#parameter-files).
Check out the Nextflow documentation for [Parameter Files](https://docs.seqera.io/nextflow/cli#parameter-files).
:::

To run `nf-core/demo` with a parameters file:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
title: "Installation"
subtitle: Install nf-core/tools
weight: 1
parentWeight: 1
---

nf-core tools is a Python package that provides command-line utilities for working with nf-core pipelines.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ If the download speeds are much slower than your internet connection is capable

### How pipeline containers are found

The download command internally uses [`nextflow inspect`](https://www.nextflow.io/docs/latest/reference/cli.html#inspect) to find container images.
The download command internally uses [`nextflow inspect`](https://docs.seqera.io/nextflow/reference/cli#inspect) to find container images.
This Nextflow subcommand parses the pipeline code, both configs and scripts, and figures out what container is used in each module.
To specify what container system to fetch containers for and to include containers required for pipeline tests, the `nextflow inspect` command is run with the flag `-profile <singularity/docker>,test,test_full`.
The command then produces a JSON file containing URIs for each container of interest in the pipeline.
Expand Down
2 changes: 1 addition & 1 deletion sites/docs/src/content/docs/nf-core-tools/api_reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: API
subtitle: Browse API reference
shortTitle: API
weight: 1
weight: 2
---

empty placeholder
Original file line number Diff line number Diff line change
Expand Up @@ -116,5 +116,5 @@ Generate a parameters file using the **Launch** button on the [nf-co.re website]

For more information about configuration syntax and parameters, see:

- [Nextflow config](https://www.nextflow.io/docs/latest/config.html)
- [Nextflow config](https://docs.seqera.io/nextflow/config)
- [Institutional profiles](../../developing/institutional-profiles/overview.md)
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ process {
}
```

For more information, see the [Nextflow documentation](https://www.nextflow.io/docs/latest/config.html#process-selectors).
For more information, see the [Nextflow documentation](https://docs.seqera.io/nextflow/config#process-selectors).

After writing your [configuration file](#custom-configuration-files), supply it to your pipeline command with `-c <path>/<to>/<config>.conf`.

Expand All @@ -104,7 +104,7 @@ Setting memory to `200` allocates 200 bytes of memory.

Use quotes with a space or no quotes with a dot: `"200 GB"` or `200.GB`.

See the Nextflow documentation for [memory](https://www.nextflow.io/docs/latest/process.html#memory), [cpus](https://www.nextflow.io/docs/latest/process.html#cpus), and [time](https://www.nextflow.io/docs/latest/process.html#time).
See the Nextflow documentation for [memory](https://docs.seqera.io/nextflow/process#memory), [cpus](https://docs.seqera.io/nextflow/process#cpus), and [time](https://docs.seqera.io/nextflow/process#time).
:::

:::info
Expand All @@ -120,7 +120,7 @@ Nextflow pipelines run in 'local' mode by default, executing jobs on the same sy
Most users need to specify an executor to tell Nextflow how to submit jobs to a job scheduler (e.g., SGE, LSF, Slurm, PBS, or AWS Batch).

You can configure the executor in shared configuration profiles or in custom configuration files.
For more information about executors, see [Executors](https://www.nextflow.io/docs/latest/executor.html#executor-page).
For more information about executors, see [Executors](https://docs.seqera.io/nextflow/executor#executor-page).

## Set max resources

Expand Down Expand Up @@ -193,7 +193,7 @@ For example, if you set `docker.registry = 'myregistry.com'`, the image pulls fr

## Update tool versions

The [Nextflow DSL2](https://www.nextflow.io/docs/latest/dsl2.html) implementation of nf-core pipelines uses one container or Conda environment per process, which simplifies software dependency maintenance and updates.
The [Nextflow DSL2](https://docs.seqera.io/nextflow/dsl2) implementation of nf-core pipelines uses one container or Conda environment per process, which simplifies software dependency maintenance and updates.

To use a different version of a tool, identify the `process` name and override the Nextflow `container` or `conda` definition for that process using the `withName` declaration.

Expand Down Expand Up @@ -302,6 +302,6 @@ Pipeline developers provide no warranty when you update tool parameters or chang

For more information about configuration syntax and parameters, see:

- [Nextflow configuration documentation](https://www.nextflow.io/docs/latest/config.html)
- [Nextflow executors](https://www.nextflow.io/docs/latest/executor.html)
- [Nextflow configuration documentation](https://docs.seqera.io/nextflow/config)
- [Nextflow executors](https://docs.seqera.io/nextflow/executor)
- [nf-core/configs](https://github.com/nf-core/configs)
2 changes: 1 addition & 1 deletion sites/docs/src/content/docs/running/run-pipelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ Always use `-resume` when re-running a pipeline after fixing errors or updating

### Notifications

- Specify `--email your@email.com` to receive emails when your pipeline completes (requires Nextflow [mail and notification configuration](https://www.nextflow.io/docs/latest/mail.html#mail-configuration)).
- Specify `--email your@email.com` to receive emails when your pipeline completes (requires Nextflow [mail and notification configuration](https://docs.seqera.io/nextflow/mail#mail-configuration)).
- To receive notifications from your pipeline (e.g. on completion or failure), see the [nf-slack plugin](https://github.com/seqeralabs/nf-slack) for Slack or the [nf-teams plugin](https://github.com/nvnieuwk/nf-teams) for Microsoft Teams.

## Next steps
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -511,7 +511,7 @@ Alternative suggestions:
## Script inclusion

Module templates separate scientific logic from workflow-specific logic, improving code clarity and maintainability.
If a module's `script:` block contains a script rather than command invocations, regardless of the language (for example, Bash, R, Python), and the content is more than a readable length (as a rule of thumb, approximately 20 lines), provide it through a [Nextflow module template](https://www.nextflow.io/docs/latest/module.html#module-templates).
If a module's `script:` block contains a script rather than command invocations, regardless of the language (for example, Bash, R, Python), and the content is more than a readable length (as a rule of thumb, approximately 20 lines), provide it through a [Nextflow module template](https://docs.seqera.io/nextflow/module#module-templates).

:::note
We recommend use of Nextflow templates as they are the most portable method of separating custom script content and execution across all execution contexts.
Expand Down Expand Up @@ -583,7 +583,7 @@ For an R example see [deseq2/differential](https://github.com/nf-core/modules/bl

### Stub block must exist

[A stub block](https://www.nextflow.io/docs/latest/process.html#stub) MUST exist for all modules.
[A stub block](https://docs.seqera.io/nextflow/process#stub) MUST exist for all modules.
This is a block of code that replaces the `script` command when the option `-stub` is set.
This enables quick testing of the workflow logic, as a "dry-run".

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ If appropriate test data does not exist in the `modules` branch of [`nf-core/tes

Adding test data may not be possible for some modules if the input data is too large or requires a local database.

In these scenarios, use the Nextflow [`stub`](https://www.nextflow.io/docs/latest/process.html#stub) feature to test the module.
In these scenarios, use the Nextflow [`stub`](https://docs.seqera.io/nextflow/process#stub) feature to test the module.

Refer to the [`gtdbtk/classify`](https://github.com/nf-core/modules/blob/79d38a306bdaf07000e0d6f300684d3ed38c8919/modules/gtdbtk/classifywf/main.nf#L66) module and its corresponding [test script](https://github.com/nf-core/modules/blob/79d38a306bdaf07000e0d6f300684d3ed38c8919/tests/modules/gtdbtk/classifywf/main.nf#L20) for an example of how to use this feature for module development.

Expand Down
87 changes: 55 additions & 32 deletions sites/docs/src/pages/docs/[subsection].astro
Original file line number Diff line number Diff line change
Expand Up @@ -235,45 +235,56 @@ const splitUrl = `${Astro.url.pathname}/`.replace(/^\/|\/$/g, "").split("/");
{sanitizeNfCoreLabels(item.label)}
</h3>
</div>
{groupPages.map((page) => (
<a
href={page.href}
class="text-decoration-none g-col-12 g-col-md-6 g-col-lg-4"
>
<div class="card h-100 page-card">
<div class="card-body">
<h5 class="h5 card-title mb-2">{page.label}</h5>
{page.subtitle && (
<p class="card-description mb-0">{page.subtitle}</p>
)}
</div>
<div class="g-col-12">
<div class="nested-content">
<div class="grid gap-3">
{groupPages.map((page) => (
<a
href={page.href}
class="text-decoration-none g-col-12 g-col-md-6 g-col-lg-4"
>
<div class="card h-100 page-card">
<div class="card-body">
<h5 class="h5 card-title mb-2">
{page.label}
</h5>
{page.subtitle && (
<p class="card-description mb-0">
{page.subtitle}
</p>
)}
</div>
</div>
</a>
))}
</div>
</a>
))}
</div>
</div>
</>,
);
}
});

const pageCards = directPages.map((page) => (
<a href={page.href} class="text-decoration-none g-col-12 g-col-md-6 g-col-lg-4">
<div class="card h-100 page-card">
<div class="card-body">
<h5 class="h5 card-title mb-2">{page.label}</h5>
{page.subtitle && <p class="card-description mb-0">{page.subtitle}</p>}
</div>
</div>
</a>
));

return (
<>
{directPages.map((page) => (
<a
href={page.href}
class="text-decoration-none g-col-12 g-col-md-6 g-col-lg-4"
>
<div class="card h-100 page-card">
<div class="card-body">
<h5 class="h5 card-title mb-2">{page.label}</h5>
{page.subtitle && (
<p class="card-description mb-0">{page.subtitle}</p>
)}
</div>
</div>
</a>
))}
{groups}
</>
<div class="g-col-12">
<div class="section-content">
<div class="grid gap-3">
{pageCards}
{groups}
</div>
</div>
</div>
);
};

Expand Down Expand Up @@ -345,6 +356,18 @@ const splitUrl = `${Astro.url.pathname}/`.replace(/^\/|\/$/g, "").split("/");
margin-top: 2rem;
}

.section-content {
border-left: 2px solid var(--bs-border-color);
padding-left: 1rem;
margin-left: 0.25rem;
}

.nested-content {
border-left: 2px solid var(--bs-border-color);
padding-left: 1rem;
margin-left: 0.25rem;
}

/* Page Cards - matching index.astro style */
.page-card {
border: 1px solid var(--bs-border-color);
Expand Down
2 changes: 1 addition & 1 deletion sites/docs/src/pages/docs/index.astro
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ const mainSections = [
const trainingCards = [
{
title: "Nextflow documentation",
href: "https://www.nextflow.io/docs/latest/index.html",
href: "https://docs.seqera.io/nextflow/",
icon: "octicon:book-16",
description: "Official Nextflow language documentation and guides",
},
Expand Down
4 changes: 4 additions & 0 deletions sites/main-site/utils/functions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,10 @@ export const addEntriesToSection = (sections, docs: CollectionEntry<'docs'>[], u
if (label === 'Nf-core-tools') {
label = 'nf-core/tools';
}
// preserve CLI as all-caps acronym
if (label === 'Cli') {
label = 'CLI';
}
const existingEntry = currentLevel.find((entry) => entry?.label === label);
const lastPart = i === parts.length - 1;
const secondToLastPart = i === parts.length - 2;
Expand Down
Loading