Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

manywidgets

A set of anywidget widgets for data analysis and geospatial work in notebooks — self-contained, composable, and good with lonboard. They work in a live Jupyter kernel and render statically (no kernel) via the myst-anywidget-static-export MyST plugin.

Install

Note: This is not yet published to PyPi so pip install does not currently work. To install currently, use:

pip install "manywidgets[lonboard] @ git+https://github.com/developmentseed/manywidgets.git"
pip install manywidgets
# optional lonboard interop widgets:
pip install "manywidgets[lonboard]"

Widgets

Input controls: Slider, RangeSlider, Dropdown, Toggle, Button, NumberInput.

Value displays: Stat, NumberDisplay, Text, Legend.

Layout: Row, Column, Grid — arrange widgets side-by-side while keeping them linked, live and in static export. See the layout examples for how they compose.

Lonboard interop (optional, pip install "manywidgets[lonboard]"): LayerToggle, FilterBinder, LayerFilter — drive a lonboard map’s layers. See the lonboard guide.

Linking: Binder — link a widget’s trait into another with a transform or nested path (see the linking guide).

Linking

manywidgets gives you two complementary linking tools, covered in the linking guide:

  1. ipywidgets.jslink / jsdlink — the canonical, kernel-free pass-through link. Works live and statically.

  2. Binder — for the cases jslink can’t express: scaling/transforms, value mapping, and writing nested dict keys (e.g. lonboard view_state.zoom).

See the demo notebook for a live, statically-exportable example wiring these together.