Skip to main content

GenePattern Notebook extension for JupyterLab

Project description

Version Build Documentation Status Docker Pulls Join the chat at https://gitter.im/genepattern

GenePattern Notebook for JupyterLab

The GenePattern Notebook environment gives GenePattern users the ability to interleave text, graphics, and code with their GenePattern analyses to create "notebooks" that can be edited, shared, and published.

GenePattern Notebooks are built on the Jupyter environment and extend it so that users can take advantage of its ease of use and ability to encapsulate an entire scientific research narrative, without the need to write code. They are a core component of the g2nb project.

Looking for classic Jupyter Notebook support?

Jupyter Notebook support in is available, albeit no longer in active development. You can find it in its own branch. Just click here!

Prerequisites

  • JupyterLab >= 3.0.0
  • ipywidgets >= 7.0.0

Docker

A Docker image with nbtools and the full JupyterLab stack is available through DockerHub.

docker pull genepattern/lab
docker run --rm -p 8888:8888 genepattern/lab

Installation

Full installation instructions for casual use are detailed on the GenePattern Notebook website. Users should also consider the g2nb Notebook Repository, which provides an install-free cloud deployment of the full suite of g2nb tools, including GenePattern Notebook.

Development Install

The installation instructions below are intended for developers who want to install the project from PIP or GitHub for the purposes of software development.

Install Python

In order to get the GenePattern Notebook working you will first need to install a compatible version of Python. This means you will need Python 3.6+. We recommend using the Anaconda Python distribution. This is a scientific version of Python that ships with many of the most popular Python packages for science, math and data analysis (ex: NumPy, SciPy, Pandas, Matplotlib, IPython, etc.).

Note for Mac Users: Mac comes with Python, but if you have an older version of the OS you will need to install a newer version, as many older versions of MacOS ship with Python 2.

Install GenePattern Notebook from GitHub

Copy the contents of genepattern-notebook/extension to your development computer and ensure that the resulting directory if on your Python path. To test this, open Python and try to import genepattern. If this is successful, you have a copy of the extension available.

If you don't already have Jupyter installed, you can install it from PIP by running:

pip install jupyter

From here go to the "Load the GenePattern extension" step below.

Install GenePattern Notebook from PIP or Conda

The easiest way to install GenePattern Notebook is through either PIP or conda. It can be installed by executing one of the following commands:

pip install genepattern-notebook

or

conda install -c genepattern genepattern-notebook

Load the nbtools extension

# Install ipywidgets, if you haven't already
jupyter nbextension enable --py widgetsnbextension
jupyter labextension install @jupyter-widgets/jupyterlab-manager

# Clone the nbtools repository
git clone https://github.com/genepattern/nbtools-lab-prototype.git
cd nbtools-lab-prototype

# Install the nbtools JupyterLab prototype
pip install .
jupyter labextension install .
jupyter nbextension install --py nbtools --sys-prefix
jupyter nbextension enable --py nbtools --sys-prefix

Launch Jupyter

Finally, you may launch JupyterLab by issuing the following command at the terminal:

jupyter lab

This will start up the notebook kernel and launch your web browser pointing to the Notebook.

Related Repositories

The following GitHub repositories contain code or other data related to the GenePattern Notebook environment.

  • g2nb: A meta-package which installs all of the g2nb tools and extensions.
  • genepattern-python: The GenePattern Library allows for programmatic access to GenePattern from Python, and is used by GenePattern Notebook behind the scenes.
  • nbtools: The Notebook Tool Manager is a tool-agnostic interface and registry for searching, browsing and launching available notebook tools in a Jupyter environment.
  • jupyter-wysiwyg: A WYSIWYG editor for markdown cells.
  • example-notebooks: A repository of example notebooks that demonstrate functionality or analysis techniques in the GenePattern Notebook environment.
  • workspace: Scripts, services and other infrastructure used in the operation of the GenePattern Notebook Repository.

Known Issues

The current version of the code only works with GenePattern 3.9.3 and up!

Users using the GenePattern Notebook with an older version of GenePattern (3.9.3 or 3.9.4) may need to log into the GenePattern UI before making use of the notebook. The server status message and child jobs will also be unavailable. If you are using one of these older versions, we recommend that you upgrade to the latest version of GenePattern.

Code of Conduct

We are dedicated to providing a harassment-free experience for all members of the GenePattern community, regardless of gender, gender identity and expression, sexual orientation, disability, physical appearance, body size, age, race, or religion. We do not tolerate harassment of participants in any form. This code of conduct applies to all GenePattern spaces, including the Google Group, our Git repositories, and our social media accounts, both online and off. Anyone who violates this code of conduct may be sanctioned or expelled from these spaces at the discretion of the GenePattern team.

For more details, see our Code of Conduct.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

genepattern-notebook-22.10.0b1.tar.gz (27.5 kB view details)

Uploaded Source

Built Distribution

genepattern_notebook-22.10.0b1-py3-none-any.whl (26.8 kB view details)

Uploaded Python 3

File details

Details for the file genepattern-notebook-22.10.0b1.tar.gz.

File metadata

  • Download URL: genepattern-notebook-22.10.0b1.tar.gz
  • Upload date:
  • Size: 27.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for genepattern-notebook-22.10.0b1.tar.gz
Algorithm Hash digest
SHA256 3ffdd65253f2468280a811d5b7cebf249c19d9ac70c9772eda1a85f6ee342ec7
MD5 dcf89eed342f7376279e57e79949a816
BLAKE2b-256 21c7588706be6f8898e7ce0986ad27cae9d5aff8f6ec7c7e9eb374bc9921d0d2

See more details on using hashes here.

File details

Details for the file genepattern_notebook-22.10.0b1-py3-none-any.whl.

File metadata

  • Download URL: genepattern_notebook-22.10.0b1-py3-none-any.whl
  • Upload date:
  • Size: 26.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for genepattern_notebook-22.10.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 29adb5f67eb6ded44508796dcce5fe7e6dd8b821461baf26931d6b446603a6eb
MD5 b699db6518a099d3b63a643c86616998
BLAKE2b-256 308634af2243ea59af6e76a1728156fd9eca790d524bb1b37abba2357f95ef35

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page