dash is a free, open source business intelligence & reporting project written in Python and released under MIT. It has 24,411 GitHub stars, 2,314 forks and 480 open issues, and was last pushed 8 hours ago. On this registry it ranks #9 of 34 tracked projects in Business Intelligence & Reporting, with 5 head-to-head comparisons available. It gained 2 stars over the last 3 tracked days.

What is dash?

Dash is an open-source Python framework for building analytical web applications, data apps, and dashboards without writing JavaScript, aimed at data scientists, analysts, and machine learning engineers who want to turn Python code into interactive browser interfaces.

What it is

Dash is a Python framework for building data apps and dashboards. It sits on top of Plotly.js for charting, React for the UI layer, and Flask for the server, and it ties modern interface elements such as dropdowns, sliders, and graphs directly to analytical Python code. Applications are declarative and reactive: the app code describes which inputs drive which outputs, and Dash handles the wiring in the browser.

The concrete problem it solves is the gap between an analysis living in a notebook and an interactive application that other people can open in a browser. It lives in the Python data science ecosystem, alongside the Jupyter and data-visualization tooling of that world, and it replaces the hand-written JavaScript, HTML, and front-end framework code that a team would otherwise write and maintain to put a chart or a model behind user controls. Because about 50 chart types, maps included, come from Plotly.js, a developer does not need to implement visualization from scratch either.

Key capabilities

  • Declarative, reactive callbacks that bind many inputs to many outputs; the README's crossfiltering example composes 5 inputs, 3 outputs, and cross filtering in 160 lines of Python.
  • Charting from Plotly.js, with about 50 chart types supported, maps among them.
  • Full control over look and feel, demonstrated by an application styled to look like a PDF report rather than a conventional dashboard.
  • Data flow into Pandas DataFrames; the sample app exports data from Google Finance into a DataFrame as a dropdown value changes.
  • Python and R app code, as shown in the dash.gallery app gallery.
  • Runs under Flask with React components, so the server and UI layers are ordinary parts of the Python web stack.
  • MIT licensed and installable from PyPI.

Who uses it and how

  • Data scientists and machine learning engineers who build web apps for ML and data science work and want to keep the logic in Python.
  • Finance and bioinformatics practitioners, both listed among the project's topics, who need interactive charts and filtered views over analytical data.
  • Single analysts running an app on a local laptop or workstation, which is what Dash Open Source supports directly.
  • Teams producing report-style output, using Dash's layout control to render a document-like interface instead of a dashboard grid.
  • Departments or companies needing the same app for many users, where the README directs them to Dash Enterprise for hosting, deployment, and authentication.

Getting started

Install the dash package from PyPI and follow the tutorial at dash.plotly.com/getting-started, which the README states gets a first Dash app running in under five minutes. The project homepage is plotly.com/dash.

How it compares

No comparable project is named in the facts for this entry, so Dash stands alone in this registry. Its lineage is the Plotly.js, React, and Flask stack it is built on rather than a set of sibling frameworks.

When to use it — and when not to

Choose Dash when the team writes Python, wants interactive analytics in a browser, and is willing to own the Flask server it runs on. Dash Open Source apps run on a laptop or workstation but, as the README states, cannot easily be accessed by others in the organization; authentication and horizontally scalable, highly available hosting are the concerns that lead to Dash Enterprise, and a self-hoster must solve those separately. A team needing turnkey company-wide access control, Kubernetes scaling, or a managed app deployment path without building any of it should look elsewhere or budget for the commercial offering, and anyone wanting a product with no operational surface at all should not pick this up expecting one.

project readme (upstream, from github) — read inline

Dash

CircleCI GitHub PyPI PyPI - Python Version GitHub commit activity

Dash is the most downloaded, trusted Python framework for building ML & data science web apps.

Built on top of Plotly.js, React and Flask, Dash ties modern UI elements like dropdowns, sliders, and graphs directly to your analytical Python code. Read our tutorial (proudly crafted ❤️ with Dash itself).

  • Docs: Create your first Dash app in under 5 minutes

  • dash.gallery: Dash app gallery with Python & R code

Maintained by Plotly

Dash App Examples

Dash App Description
Sample Dash App Here’s a simple example of a Dash App that ties a Dropdown to a Plotly Graph. As the user selects a value in the Dropdown, the application code dynamically exports data from Google Finance into a Pandas DataFrame. This app was written in just 43 lines of code (view the source).
Crossfiltering Dash App Dash app code is declarative and reactive, which makes it easy to build complex apps that contain many interactive elements. Here’s an example with 5 inputs, 3 outputs, and cross filtering. This app was composed in just 160 lines of code, all of which were Python.
Dash App with Mapbox map showing walmart store openings Dash uses Plotly.js for charting. About 50 chart types are supported, including maps.
Financial report Dash isn't just for dashboards. You have full control over the look and feel of your applications. Here's a Dash App that's styled to look like a PDF report.

To learn more about Dash, read the extensive announcement letter or jump in with the user guide.

Dash OSS & Dash Enterprise

With Dash Open Source, Dash apps run on your local laptop or workstation, but cannot be easily accessed by others in your organization.

Scale up with Dash Enterprise when your Dash app is ready for department or company-wide consumption. Or, launch your initiative with Dash Enterprise from the start to unlock developer productivity gains and hands-on acceleration from Plotly's team.

ML Ops Features: A one-stop shop for ML Ops: Horizontally scalable hosting, deployment, and authentication for your Dash apps. No IT or DevOps required.

  • App manager Deploy & manage Dash apps without needing IT or a DevOps team. App Manager gives you point & click control over all aspects of your Dash deployments.
  • Kubernetes scaling Ensure high availability of Dash apps and scale horizontally with Dash Enterprise’s Kubernetes architecture. No IT or Helm required.
  • No code auth Control Dash app access in a few clicks. Dash Enterprise supports LDAP, AD, PKI, Okta, SAML, OpenID Connect, OAuth, SSO, and simple email authentication.
  • Job Queue The Job Queue is the key to building scalable Dash apps. Move heavy computation from synchronous Dash callbacks to the Job Queue for asynchronous background processing.

Low-Code Features: Low-code Dash app capabilities that supercharge developer productivity.

  • Design Kit Design like a pro without writing a line of CSS. Easily arrange, style, brand, and customize your Dash apps.
  • Snapshot Engine Save & share Dash app views as links or PDFs. Or, run a Python job through Dash and have Snapshot Engine email a report when the job is done.
  • Dashboard Toolkit Drag & drop layouts, chart editing, and crossfilter for your Dash apps.
  • Embedding Natively embed Dash apps in an existing web application or website without the use of IFrames.

Enterprise AI Features: Everything that your data science team needs to rapidly deliver AI/ML research and business initiatives.

  • AI App Marketplace Dash Enterprise ships with dozens of Dash app templates for business problems where AI/ML is having the greatest impact.
  • Big Data for Pything Connect to Python's most popular big data back ends: Dask, Databricks, NVIDIA RAPIDS, Snowflake, Postgres, Vaex, and more.
  • GPU & Dask Acceleration Dash Enterprise puts Python’s most popular HPC stack for GPU and parallel CPU computing in the hands of business users.
  • Data Science Workspaces Be productive from Day 1. Write and execute Python, R, & Julia code from Dash Enterprise's onboard code editor.

See https://plotly.com/contact-us/ to get in touch.

Dash Enterprise

Frequently asked questions

Is dash free to use?

dash is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does dash do?

Data Apps & Dashboards for Python. No JavaScript Required.

What is dash written in?

dash is primarily written in Python. Its source is publicly available at https://github.com/plotly/dash, and it has 24,411 GitHub stars.