Skip to main content
Version: Python

Configure JS plug-ins

The Deephaven server has the ability to work with custom JS plug-ins that extend the functionality of the server and web client UI. This guide shows you how to install JS plug-ins and provides examples for two specific plug-ins, Plotly and Matplotlib.


Installing a JS plug-in involves up to 3 steps:

FROM as js-plugins
# 1. Package the NPM deephaven-js-plugin(s)
RUN ./ <plugins>

# 2. Install the python js-plugin(s) if necessary (some plugins may be JS only)
RUN pip install --no-cache-dir <packages>
# 3. Copy the js-plugins/ directory
COPY --from=js-plugins js-plugins/ /opt/deephaven/config/js-plugins/
docker build -t my-deephaven-image .
docker run --rm -p 10000:10000 my-deephaven-image

The workflow above is shown in relationship to the Docker application, but the general requirements are the same if one is deploying the native application. See for more information on the JS plugin packaging logic.


The JS plug-ins are automatically sourced from the <configDir>/js-plugins/ directory if present. In the case of the Docker example above, /opt/deephaven/config/ is the configuration directory. See config-directory for information about the configuration directory for other setups.

The JS plug-ins directory can also be set explicitly through the configuration property deephaven.jsPlugins.resourceBase.



Here's an example installing the Plotly JS plug-in:

FROM as js-plugins
RUN ./ @deephaven/js-plugin-plotly

RUN pip install --no-cache-dir deephaven-plugin-plotly
COPY --from=js-plugins js-plugins/ /opt/deephaven/config/js-plugins/

Plotly + Matplotlib

Here's an example installing the Plotly and Matplotlib JS plug-ins:

FROM as js-plugins
RUN ./ @deephaven/js-plugin-plotly @deephaven/js-plugin-matplotlib

RUN pip install --no-cache-dir deephaven-plugin-plotly deephaven-plugin-matplotlib
COPY --from=js-plugins js-plugins/ /opt/deephaven/config/js-plugins/

Available JS Plug-ins

Deephaven maintains a set of JS plugins in our GitHub repository deephaven/deephaven-js-plugins.

These plugins have the keyword deephaven-js-plugin on NPM, and can easily be searched.

Third-parties are welcome to develop their own JS plug-ins, or can reach out to suggest new plugins that Deephaven should develop.