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