skillfed

dash

A Python framework for building reactive web-apps. Developed by Plotly.

dash v4.4.1 11.4M downloads/30d#1,396 on PyPI24,378
Permissive license MIT Active released

What it is and what it does

Dash is a Python web framework built on Flask, Plotly.js, and React that lets you build interactive data applications by declaring UI components and connecting them to Python callbacks. You write pure Python—no JavaScript required—to tie dropdowns, sliders, graphs, and other elements to your analytical logic, and Dash handles the reactive updates when users interact with the app.

The framework is designed for data science and ML workflows and runs on your local machine or can be deployed to a server. It handles both simple single-page dashboards and complex multi-input applications with cross-filtering. The package depends on Flask for the web server, Plotly for charting, Pydantic for validation, and several async utilities; it requires Python 3.9 or later.

Use it for:

  • Build interactive financial dashboards that update graphs when users select date ranges or filter criteria from dropdowns.
  • Create ML model exploration interfaces where users adjust parameters and see real-time predictions or classification results.
  • Develop data exploration tools that let analysts cross-filter multiple visualizations from a single dataset.
  • Deploy internal business intelligence reports with styled layouts that look like PDF reports but are fully interactive.
  • Build scientific research dashboards that visualize experimental data with interactive controls for parameter tuning.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Dash is a Python framework for building interactive web applications with reactive UI elements like dropdowns and graphs tied directly to analytical code, using Flask and Plotly for rendering.

Yes. Dash is actively maintained, has no known vulnerabilities, installs with low friction, and is licensed permissively under MIT. It is well-suited for building interactive web applications in Python without requiring JavaScript expertise. Install it if you need to turn analytical Python code into interactive dashboards or data apps.

Install

dash on PyPI

pip

pip install dash

uv

uv add dash

poetry

poetry add dash

Installing dash

Before you install

Low install friction with a pure-Python wheel distribution. Actively maintained with a recent release and repository activity; last commit on 2026-08-13 signals ongoing development.

License in practice

MIT license permits commercial and private use with minimal restrictions; you may use, modify, and distribute Dash-based applications freely provided you include the license notice.

Quickstart

pip install dash

import dash
from dash import dcc, html, callback
import plotly.express as px

app = dash.Dash(__name__)
app.layout = html.Div([
    dcc.Dropdown(id='dropdown', options=[{'label': 'A', 'value': 'a'}]),
    dcc.Graph(id='graph')
])

@callback(dash.Output('graph', 'figure'), dash.Input('dropdown', 'value'))
def update_graph(value):
    return px.bar(x=[1, 2, 3], y=[4, 5, 6])

if __name__ == '__main__':
    app.run_server(debug=True)

Verify before relying

  • Whether all 12 runtime dependencies are required for basic use or if some are optional.
  • Performance characteristics and scalability limits for production deployments without Dash Enterprise.
  • Exact number of supported chart types beyond the description's mention of map support.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 12 — Flask, Werkzeug, plotly, importlib-metadata, typing_extensions, requests, retrying, nest-asyncio, setuptools, janus, pydantic, comm
Maintenance actively maintained — 24 days since the last release
Last repo commit
First released
Downloads 11,414,321/month — #1,396 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: dash-4.4.1-py3-none-any.whl

Development Status :: 5 - Production/StableEnvironment :: Web EnvironmentFramework :: DashFramework :: FlaskIntended Audience :: DevelopersIntended Audience :: EducationIntended Audience :: Financial and Insurance IndustryIntended Audience :: Healthcare IndustryIntended Audience :: ManufacturingIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.9Topic :: Database :: Front-EndsTopic :: Office/Business :: Financial :: SpreadsheetTopic :: Scientific/Engineering :: VisualizationTopic :: Software Development :: Libraries :: Application FrameworksTopic :: Software Development :: Widget Sets

Tags

python web app frameworkinteractive dashboards pythonreactive web ui builderplotly dash appsdata visualization web frameworkpython data science web appsflask-based dashboard framework
web-frameworkdata-visualizationreactive-ui

More Application Frameworks packages