Skip to content

Process Guide

This guide will walk you through the creation of Via Foundry processes.

Inputs

This section is where you enter all your process's input nodes. Clicking the Add input Parameter... dropdown will show a list of all existing inputs, from which you can select those you wish to use. After adding a selected parameter as a input node, you'll see: * Input Name box: Controls the variable name in your script * Operator dropdown: Advance input processing * Operator Content: Additional parameters for the Operator chosen * Optional: Where this input is required * Test Value: When running in test mode - the default value for this input

image

The Input Name box is used to define Nextflow variables that will be used in the Scripts section. For example, if you enter the input name as "genome," you can call this variable as ${genome} in the Script field. Here are some other examples:

Qualifier Input name How to Reference in the Script
val script_path ${script_path}
each bed_list ${bed_list}
file genome ${genome}
set val(name), file(genome) ${genome}
set val(name), file(genome) ${name}

Additionally, if you need to transform values emitted by a channel, you can click the Add/Remove Operator button, then select operators from the Operators dropdown menu that appears.

Optional Inputs

If you want to use an optional input parameter, you can check the Optional checkbox. This feature provides flexibility to the user while defining their process, as the process will still be executed even if the input parameter is not provided.

Operators

If you need to transform values emitted by a channel, you can click the Operators button and select operators from the dropdown menu. This allows you to apply various operations or modifications to the emitted values. Optionally, you can specify the operator content to customize its behavior according to your requirements. Additionally, you can add multiple operators by enclosing them within parentheses ( ).

Here are some examples of operators and their usage:

Operator Operator Content Usage
flatMap ().buffer(size:3) Groups 3 emitted items into one new channel.
groupTuple Collects tuples (or lists) of values emitted and groups them based on their key value.

Tip: To get more information about operators, check out this link to Nextflow's documentation.