Get Started#


Tutorials are approximately divided into sections with increasing levels of complexity: Fundamentals, Intermediate, Advanced. You’ll also find content specific to various Workshops hosted over the years, often with accompanying video recordings of instructors going over content and answering questions that come up.

Most of the tutorial content is written as Jupyter Notebooks that mix code, text, visualization, and exercises. You can either browse rendered versions of these notebooks on this website, or execute the code examples interactively.

Many notebooks use special formatting (Myst Markdown) that renders best in a JupyterLab web interface. If you are new to JupyterLab, spend some time reviewing the documentation and videos.

Run code interactively#

On the Cloud#

The easiest way to start modifying and experimenting with tutorial content is to launch a pre-configured server on the Cloud. This is easy thanks to several free resources which offer ephemeral computing instances (be aware you may loose your connection or work at any time)

Clicking Binder will load a pre-configured Jupyter Lab interface with all tutorial notebooks for you to run. You have minimal computing resources and any changes you make will not be saved. Any page with executable content also has a icon in the upper right that will launch an interactive session for that particular page.


Be patient, it can take a few minutes for a server to become available on the Cloud (!

GitHub Codespaces#

This tutorial is available to run within GitHub Codespaces - a preconfigured development environment running in Microsoft Azure.

Open in GitHub Codespaces

☝️ Click the button above to go to options window to launch a GitHub codespace.

You can choose from a selection of virtual machine types: 2 cores - 8 GB RAM should be sufficient for all code examples in this repository. Additionally, you are able to chose from various configurations for specific workshops (such as Scipy2024). GitHub currently gives every user 120 vCPU hours per month for free, beyond that you must pay. So be sure to explicitly stop your codespace when you are done by going to this page (codespaces). You can also chose to fully delete your codespace when you’re done exploring tutorial content.

On your computer#

Running tutorials on your computer requires some setup:

We recommend using conda-lock to ensure a fully reproducible Python environment

git clone
cd xarray-tutorial

conda-lock install conda/conda-lock.yml --name xarray-tutorial
# Or latest package versions: `mamba env create -f conda/environment-unpinned.yml`

conda activate xarray-tutorial
jupyter lab