Skip to content

Nextflow module schema

Title: Nextflow module schema

Type object
Required No
Additional properties Any type allowed

Description: Schema for Nextflow module specs

Property Type
+ name string
+ version string
+ description string
- keywords array of string
+ license string
- authors array of string
- maintainers array of string
- requires object
- input array
- output array
- topics array
- tools array of object

name

Type string
Required Yes

Description: Module name in namespace/name form (e.g., 'nf-core/fastqc', 'nf-core/gfatools/gfa2fa').

Restrictions
Must match regular expression ^[a-zA-Z0-9._-]+/[a-zA-Z0-9_-]+(?:/[a-zA-Z0-9_-]+)*$ Test

version

Type string
Required Yes

Description: Semantic version of the module (MAJOR.MINOR.PATCH or MAJOR.MINOR.PATCH-SUFFIX).

Restrictions
Must match regular expression ^\d+\.\d+\.\d+(-[\w.-]+)?$ Test

description

Type string
Required Yes

Description: Description of the module

keywords

Type array of string
Required No

Description: Keywords for the module

Each item of this array must be Description
keywords items -

keywords items

Type string
Required No
Restrictions
Min length 2

license

Type string
Required Yes

Description: SPDX license identifier for the module source code

authors

Type array of string
Required No

Description: Original authors of the module (GitHub handles preferred)

Each item of this array must be Description
authors items -

authors items

Type string
Required No

maintainers

Type array of string
Required No

Description: Current maintainers of the module (GitHub handles preferred)

Each item of this array must be Description
maintainers items -

maintainers items

Type string
Required No

requires

Type object
Required No
Additional properties Not allowed

Description: Runtime requirements for the module

Property Type
- nextflow string

nextflow

Type string
Required No

Description: Nextflow version constraint

input

Type array
Required No

Description: Inputs of the module

Each item of this array must be Description
structuredParameter -

structuredParameter

Type combining
Required No
Additional properties Any type allowed
Defined in #/$defs/structuredParameter
One of(Option)
paramSpec
item 1

paramSpec

Type object
Required No
Additional properties Any type allowed
Defined in #/$defs/paramSpec

Description: Specification for a module input/output

Property Type
- name string
+ type enum (of string)
+ description string
- pattern string
- enum array
- ontologies array of object
name
Type string
Required No

Description: Parameter identifier

Restrictions
Must match regular expression ^[a-zA-Z_][a-zA-Z0-9_]*$ Test
type
Type enum (of string)
Required Yes

Description: Parameter type

Must be one of:

  • "boolean"
  • "float"
  • "integer"
  • "string"
  • "list"
  • "map"
  • "file"
  • "directory"
description
Type string
Required Yes

Description: Human-readable description of the parameter

pattern
Type string
Required No

Description: Glob pattern for file/directory parameters

enum
Type array
Required No

Description: List of allowed values for the parameter

ontologies
Type array of object
Required No

Description: List of ontologies for the parameter

Each item of this array must be Description
ontologies items -
ontologies items
Type object
Required No
Additional properties Any type allowed
Property Type
- .* string
.*

All properties whose name matches the regular expression .* (Test) must respect the following conditions

Type string
Required No
Format uri
Restrictions
Must match regular expression ^https?://.* Test

item 1

Type array
Required No
Each item of this array must be Description
paramSpec Specification for a module input/output
paramSpec
Type object
Required No
Additional properties Any type allowed
Same definition as input_items_oneOf_i0

Description: Specification for a module input/output

output

Type array
Required No

Description: Outputs of the module

Each item of this array must be Description
structuredParameter -

structuredParameter

Type combining
Required No
Additional properties Any type allowed
Same definition as input_items

topics

Type array
Required No

Description: Topics of the module

Each item of this array must be Description
structuredParameter -

structuredParameter

Type combining
Required No
Additional properties Any type allowed
Same definition as input_items

tools

Type array of object
Required No

Description: Tools used by the module

Each item of this array must be Description
tools items -

tools items

Type object
Required No
Additional properties Any type allowed
Property Type
- ^[a-zA-Z][a-zA-Z0-9_-]*$ object

toolSpec

All properties whose name matches the regular expression ^[a-zA-Z][a-zA-Z0-9_-]*$ (Test) must respect the following conditions

Type combining
Required No
Additional properties Any type allowed
Defined in #/$defs/toolSpec

Description: Specification for a software tool used by the module

Property Type
+ description string
- homepage string
- documentation string
- tool_dev_url string
- doi Combination
- licence array of string
- identifier string
Any of(Option)
item 0
item 1
item 2
item 3
item 0
Type object
Required No
Additional properties Any type allowed
The following properties are required
  • homepage
item 1
Type object
Required No
Additional properties Any type allowed
The following properties are required
  • documentation
item 2
Type object
Required No
Additional properties Any type allowed
The following properties are required
  • tool_dev_url
item 3
Type object
Required No
Additional properties Any type allowed
The following properties are required
  • doi
description
Type string
Required Yes

Description: Description of the tool

homepage
Type string
Required No
Format uri

Description: Homepage URL

Restrictions
Must match regular expression ^https?://.*$ Test
documentation
Type string
Required No
Format uri

Description: Documentation URL

Restrictions
Must match regular expression ^(https?\|ftp)://.*$ Test
tool_dev_url
Type string
Required No
Format uri

Description: Development/source code URL

Restrictions
Must match regular expression ^https?://.*$ Test
doi
Type combining
Required No
Additional properties Any type allowed

Description: Digital Object Identifier for the tool's publication

One of(Option)
item 0
item 1
item 0
Type string
Required No
Restrictions
Must match regular expression ^10\.\d{4,9}\/[^,]+$ Test
item 1
Type const
Required No

Specific value: "no DOI available"

licence
Type array of string
Required No

Description: SPDX license identifier(s) for the tool

Each item of this array must be Description
licence items -
licence items
Type string
Required No
identifier
Type string
Required No

Description: bio.tools identifier of the tool

Restrictions
Must match regular expression ^(biotools:.*)?$ Test

Generated using json-schema-for-humans