--- id: shinywidgets version: "0.8.1" license: MIT license_treatment: permissive maintenance: active --- # shinywidgets — Render ipywidgets in Shiny applications License: permissive · Maintenance: active · Downloads: 175.8K/mo ## What it is and what it does shinywidgets is a bridge library that lets you use Jupyter interactive widgets (ipywidgets) inside Shiny for Python applications. It takes the rich widget ecosystem from Jupyter—sliders, dropdowns, plots, and custom widgets—and renders them natively within a Shiny app's UI. The package depends on shiny, ipywidgets, anywidget, jupyter-core, and python-dateutil to coordinate between the two frameworks. The library is actively maintained but remains in pre-alpha, meaning the API may change and feature coverage is still evolving. It's useful when you want to reuse existing ipywidget code or leverage the Jupyter widget ecosystem without rewriting components for Shiny's native widget set. Installation is straightforward via pip with no compiled dependencies. Use it for: - Reuse existing Jupyter notebook widgets in a Shiny web application without rewriting them. - Combine Shiny's app framework with specialized ipywidgets (e.g., scientific plotting or data exploration tools). - Prototype interactive dashboards by mixing Shiny layouts with ipywidget components. - Migrate interactive Jupyter notebooks to production Shiny apps while keeping familiar widget code. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Embeds ipywidgets (Jupyter interactive widgets) directly into Shiny for Python applications, bridging the two widget ecosystems. Yes, if you need to use ipywidgets in a Shiny app or want to bridge Jupyter and Shiny codebases. The low install friction, active maintenance, and permissive license make it a straightforward choice. Be aware it's pre-alpha, so expect potential API changes and test thoroughly before relying on it in production. ## Install pip install shinywidgets uv add shinywidgets poetry add shinywidgets ## Installing shinywidgets Before you install: Low friction install with a pure-Python wheel. Active maintenance as of May 2026, though the package remains in pre-alpha status (Development Status :: 2), so expect API changes and incomplete feature coverage. License in practice: MIT license is permissive—you can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions. Quickstart: pip install shinywidgets from shinywidgets import render_ipywidget from ipywidgets import IntSlider from shiny import App, ui app = App( ui.page_fluid( render_ipywidget(IntSlider(value=5, min=0, max=10)) ), None ) if __name__ == "__main__": app.run() Requires Python 3.10 or later; depends on shiny, ipywidgets, anywidget, jupyter-core, and python-dateutil to be installed. Verify before relying: - Whether all ipywidgets are fully supported or only a subset works reliably in Shiny context. - Performance characteristics when rendering many or complex ipywidgets simultaneously. - Stability guarantees given the pre-alpha development status and potential for breaking changes. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 175.8K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags ipywidgets in shiny, jupyter widgets shiny python, render ipywidgets shiny, shiny ipywidgets integration, interactive widgets shiny app, jupyter-integration, widget-bridge [View on SkillFed](https://skillfed.io/packages/shinywidgets) · [View on PyPI](https://pypi.org/project/shinywidgets/)