Skip to content

Commit

Permalink
Move developer environment page (#5740)
Browse files Browse the repository at this point in the history
Signed-off-by: Paolo Di Tommaso <[email protected]>
Signed-off-by: Christopher Hakkaart <[email protected]>
Co-authored-by: Paolo Di Tommaso <[email protected]>
  • Loading branch information
christopher-hakkaart and pditommaso authored Feb 4, 2025
1 parent c891874 commit 18a9aee
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 9 deletions.
19 changes: 18 additions & 1 deletion docs/developer-env.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,20 @@

# Environment setup

Setting up a Nextflow development environment is a prerequisite for creating, testing, and optimizing data analysis pipelines. The steps below outline recommended tools for setting up an optimal Nextflow development environment.
Setting up a Nextflow development environment is a prerequisite for creating, testing, and optimizing data analysis pipelines.

<h3>Recommended tools</h3>

- {ref}`devenv-vscode`: A versatile code editor that enhances your Nextflow development with features like syntax highlighting and debugging.
- {ref}`devenv-extensions`: The VS Code marketplace offers a variety of extensions to enhance development. The {ref}`Nextflow extension <devenv-nextflow>` is specifically designed to enhance Nextflow development with diagnostics, hover hints, code navigation, code completion, and more.
- {ref}`devenv-docker`: A containerization platform that ensures your Nextflow workflows run consistently across different environments by packaging dependencies into isolated containers.
- {ref}`devenv-git`: A version control system that helps manage and track changes in your Nextflow projects, making collaboration, and code management more efficient.

The sections below outline the steps for setting up these tools.

:::{note}
Nextflow must be installed separately. See {ref}`install-page` for Nextflow installation instructions.
:::

:::{note}
If you are using a Windows computer, first install and configure the Windows Subsystem for Linux (WSL). See {ref}`devenv-wsl` for installation instructions.
Expand Down Expand Up @@ -60,10 +71,14 @@ See [Linux installation](https://code.visualstudio.com/docs/setup/linux#_install
````

(devenv-extensions)=

## Extensions

Extensions are a key feature of IDEs and allow you to customize your development environment by adding support for various programming languages, tools, and features. The [VS Code Marketplace](https://marketplace.visualstudio.com/vscode) offers thousands of extensions that can enhance your productivity and tailor the editor to your specific needs. Popular VS Code extensions for Nextflow developers are listed below:

(devenv-nextflow)=

**Nextflow**

The VS Code [Nextflow extension](https://marketplace.visualstudio.com/items?itemName=nextflow.nextflow) adds Nextflow language support to the editor. The Nextflow extension enhances development with:
Expand Down Expand Up @@ -222,6 +237,8 @@ To install Docker Desktop on Linux Debian/Ubuntu distributions:

Nextflow supports multiple container technologies (e.g., Singularity and Podman) so you can choose the one that best fits your needs. See {ref}`container-page` for more information about other supported container engines.

(devenv-git)=

## Git

Git provides powerful version control that helps track code changes. Git operates locally, meaning you don't need an internet connection to track changes, but it can also be used with remote platforms like GitHub, GitLab, or Bitbucket for collaborative development.
Expand Down
14 changes: 7 additions & 7 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,25 +11,25 @@
[![install with bioconda](https://img.shields.io/badge/install%20with-bioconda-brightgreen.svg?colorB=58bd9f&style=popout)](http://bioconda.github.io/recipes/nextflow/README.html)
[![Nextflow license](https://img.shields.io/github/license/nextflow-io/nextflow.svg?colorB=58bd9f&style=popout)](https://github.com/nextflow-io/nextflow/blob/master/COPYING)

Nextflow is a workflow system for creating scalable, portable, and reproducible workflows. It is based on the dataflow programming model, which greatly simplifies the writing of parallel and distributed pipelines, allowing you to focus on the flow of data and computation. Nextflow can deploy workflows on a variety of execution platforms, including your local machine, HPC schedulers, AWS Batch, Azure Batch, Google Cloud Batch, and Kubernetes. Additionally, it supports many ways to manage your software dependencies, including Conda, Spack, Docker, Podman, Singularity, and more.
Nextflow is a workflow system for creating scalable, portable, and reproducible workflows. It is based on the dataflow programming model, which greatly simplifies the writing of parallel and distributed pipelines, and allows you to focus on the flow of data and computation. Nextflow can deploy workflows on a variety of execution platforms, including your local machine, HPC schedulers, AWS Batch, Azure Batch, Google Cloud Batch, and Kubernetes. Additionally, it supports many ways to manage your software dependencies, including Conda, Spack, Docker, Podman, Singularity, and more.

## Get started

- Get an {ref}`overview <overview-page>` of Nextflow and its key concepts.
- Get started with Nextflow by {ref}`installing <install-page>` it and running {ref}`your first script <your-first-script>`.
- Check out [this blog post](https://www.nextflow.io/blog/2023/learn-nextflow-in-2023.html) for even more resources on how to learn Nextflow.
- See an {ref}`overview <overview-page>` of Nextflow and its key concepts.
- Get started by {ref}`installing <install-page>` Nextflow, setting up a {ref}`development environment <devenv-page>` with the {ref}`Nextflow VS Code extension <devenv-nextflow>`, and running {ref}`your first script <your-first-script>`.
- Check out [Nextflow Training](https://training.nextflow.io/) for learning resources and Nextflow tutorials.

## Community

You can post questions and get help in the [Nextflow community forum](https://community.seqera.io) or the [Nextflow Slack](https://www.nextflow.io/slack-invite.html). Bugs and feature requests should be reported as [GitHub issues](https://github.com/nextflow-io/nextflow/issues/new/choose).

The Nextflow community is highly active with regular community meetings, events, a podcast and more. You can view much of this material on the [Nextflow](https://www.youtube.com/@Nextflow) and [nf-core](https://www.youtube.com/@nf-core) YouTube channels.
The Nextflow community is highly active with regular community meetings, events, a podcast, and more. You can view much of this material on the [Nextflow](https://www.youtube.com/@Nextflow) and [nf-core](https://www.youtube.com/@nf-core) YouTube channels.

The [nf-core](https://nf-co.re/) project is a community effort aggregating high quality Nextflow workflows which can be used by everyone.

## Contributing

Contributions are more than welcome. See the {ref}`Contributing <contributing-page>` page for details.
Contributions are more than welcome. See the {ref}`Contributing <contributing-page>` page for more details.

## License

Expand All @@ -48,6 +48,7 @@ P. Di Tommaso, et al. Nextflow enables reproducible computational workflows. Nat
overview
install
developer-env
your-first-script
```

Expand Down Expand Up @@ -139,7 +140,6 @@ developer/plugins
:caption: Tutorials
:maxdepth: 1
developer-env
flux
metrics
```
2 changes: 1 addition & 1 deletion docs/your-first-script.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ This guide details fundamental skills to run a basic Nextflow pipeline. It inclu

You will need the following to get started:

- Nextflow. See {ref}`install-page` for instructions to install or update your version of Nextflow.
- Nextflow: See {ref}`install-page` for installation instructions.

## Run a pipeline

Expand Down

0 comments on commit 18a9aee

Please sign in to comment.