Requirements

To start contributing to OpenProblems, you need to have the following software installed:

  • Bash (>= 3.2)
  • Java Development Kit (>= 11)
  • Docker
  • Viash (>= 0.9.0)
  • Nextflow (>= 21.04)

The following sections provide instructions on how to install each of these tools. If you already have all of these tools installed, feel free to skip this boring page and go to the respective page on what you want to do either Create component or Create a new task.

Step 1: install Bash

Step 2: install Java

Verify that you have Java version 11 or higher.

java -version
Output
#| echo: false
java --version

Step 3: install Docker

Verify that Docker is working by running:

docker run hello-world
Output
#| echo: false
docker run hello-world

Step 4: Install Viash

Verify that you have Viash version 0.6.7 or higher.

viash -v
Output
viash -v

Step 5: Install Nextflow

Verify that Nextflow and Docker are working by running:

nextflow run hello -with-docker
Output
N E X T F L O W  $HOME  version 22.10.4
Launching `https://github.com/nextflow-io/hello` [compassionate_keller] DSL2 - revision: 4eab81bd42 [master]
executor >  local (4)
[d5/78e7a6] process > sayHello (2) [100%] 4 of 4 ✔
Bonjour world!
Hello world!
Hola world!
Ciao world!

Optional: Install VS Code

It is recommended to install VS Code to aid component development through extensions and YAML schemas.

Download VS Code from this page. Installers are available for all major operating systems.

YAML Extension (Recommended)

This extension provides YAML validation, syntax highlighting, auto completion and document outlining for YAML - essential for writing and editing Viash config files.

The OpenProblems repo includes schemas that help with writing API and Viash config files. The extension auto-detects these schemas.

Find more recommended extensions for Viash development here.