/dash

Interactive, reactive web apps in pure python :level_slider: :bar_chart:

Primary LanguagePythonMIT LicenseMIT

Dash

Reactive Web Apps for Python

Dash is a Python library for creating reactive, Web-based applications. Dash started as a public proof-of-concept on GitHub 2 years ago.

We kept a prototype online, but subsequent work on Dash occurred behind closed curtains. In June of 2017 we released a new version of Dash that is both enterprise-ready and a first-class member of Plotly's open-source tools.

Dash is a user interface library for creating analytical web applications. Those who use Python for data analysis, data exploration, visualization, modelling, instrument control, and reporting will find immediate use for Dash.

Dash makes it dead-simple to build a GUI around your data analysis code. Here’s a 43-line example of a Dash App that ties a Dropdown to a D3.js 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).

Sample 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.

To learn more about Dash, read the extensive announcement letter

Documentation

View the Dash User Guide. It's chock-full of examples, pro tips, and guiding principles.

Licensing

Dash is licensed under MIT.

Plotly offers an enterprise-ready deployment and permissioning server teams that are working with Dash apps behind-the-firewall. Learn more about Dash Enterprise.

Contact and Support

See https://plot.ly/dash/support for ways to get in touch.