Data-driven computational pipelines

Nextflow is a fluent DSL modelled around the UNIX pipe concept, that simplifies writing parallel and scalable pipelines in a portable manner.

You can use your favourite programming language
and tools, exploiting your current skills.

Find out more

Zero config

Zero config

Just download and play with it. No installation is required.



Are you a Python geek or a Perl hacker?
You can start fast with it.



Lightweight processes with message passing, no shared memory

Scale easily

Scale easily

Develop on your laptop, run in the grid or scale-out in the cloud with no changes.


Nextflow is built around the idea that Linux is the lingua franca of data science.

Stream oriented

Nextflow extends the Unix pipes model with a fluent DSL, allowing you to handle complex stream interactions easily.

It promotes a programming approach, based on functional composition, that results in resilient and easily reproducible pipelines.

Fast prototyping

Nextflow allows you to write a computational pipeline by making it simpler to put together many different tasks.

You may reuse your existing scripts and tools and you don't need to learn a new language or API to start using it.

Unified parallelism

Nextflow is based on the dataflow programming model which greatly simplifies writing complex distributed pipelines.

Parallelisation is implicitly defined by the processes input and output declarations. The resulting applications are inherently parallel and can scale-up or scale-out, transparently, without having to adapt to a specific platform architecture.


Nextflow provides an abstraction layer between your pipeline's logic and the execution layer, so that it can be executed on multiple platforms without it changing.

It provides out of the box executors for SGE, LSF, SLURM, PBS/Torque and HTCondor batch schedulers and for Amazon AWS and DNAnexus cloud platforms.

Continuous checkpoints

All the intermediate results produced during the pipeline execution are automatically tracked. This allows you to resume its execution, from the last successfully executed step, no matter what the reason was for it stopping.


Nextflow supports Docker and Shifter container technology. This, with the ability to run on multiple platforms, allows you to write self-contained and truly reproducible pipelines.

Getting started

It can be used on any POSIX compatible system (Linux, Solaris, OS X, etc).
Simply follow these three steps.

Check prerequisites

Java 7 or greater is required

Make sure Java 7+ is installed
on your computer by using the command:
java -version

Set up

Dead easy to install

Enter this command in your terminal:
curl -fsSL get.nextflow.io | bash
(it creates a file nextflow in the current dir)


Try a simple demo

Run the classic Hello world
by entering the following command:
./nextflow run hello

What's next

  • Confused? Ask the community

    A Nextflow discussion group is available on Google groups. Just click the above link.
  • Report bugs

    Bug reports help Nextflow improve, so please report any issue you may have!
  • Applications showcase

    A collection of Nextflow applications developed by the Nextflow users community.