JupyterLab dataset browser for THREDDS catalog
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea
jupyter-config/jupyter_notebook_config.d
jupyterlab_thredds
src
style
tests
.gitignore
.travis.yml
.zenodo.json
CHANGELOG.md
CITATION.cff
LICENSE
MANIFEST.in
README.md
environment.yml
example.ipynb
jupyterlab_thredds.gif
package.json
requirements.txt
setup.cfg
setup.py
setupbase.py
sonar-project.properties
tsconfig.json
tslint.json

README.md

jupyterlab_thredds

Build Status SonarCloud Quality SonarCloud Coverage DOI

JupyterLab dataset browser for THREDDS catalog

Can inject iris/xarray/leaflet code cells into a Python notebook of a selected dataset to further process/visualize the dataset.

screenshot

Prerequisites

  • JupyterLab, pip install jupyterlab
  • ipywidgets, jupyter labextension install @jupyter-widgets/jupyterlab-manager, requirement for ipyleaflet
  • ipyleaflet, jupyter labextension install jupyter-leaflet, to load a WMS layer
  • iris, conda install -c conda-forge iris

Installation

pip install jupyterlab_thredds
jupyter labextension install @ewatercycle/jupyterlab_thredds

Usage

  1. Start Jupyter lab with jupyter lab
  2. In Jupyter lab open a notebook
  3. Open the THREDDS tab on the left side.
  4. Fill the catalog url
  5. Press search button
  6. Select how you would like to open the dataset, by default it uses iris Python package.
  7. Press a dataset to insert code into a notebook

Development

For a development install (requires yarn), do the following in the repository directory:

yarn install
yarn build
jupyter labextension link .
python setup.py develop
jupyter serverextension enable --sys-prefix jupyterlab_thredds

To rebuild the package and the JupyterLab app:

yarn build
jupyter lab build

Watch mode

# shell 1
yarm watch
# shell 2
jupyter lab --ip=0.0.0.0 --no-browser --watch

Release

To make a new release perform the following steps:

  1. Update version in package.json, CITATION.cff and jupyterlab_thredds/version.py
  2. Make sure tests pass by running yarn test and pytest
  3. Publish lab extension to npmjs with yarn build and yarn publish --access=public
  4. Publish server extension to pypi with python setup.py sdist bdist_wheel and twine upload dist/*
  5. Create GitHub release
  6. Update DOI in README.md and CITATION.cff