How do Dash, Posit (Shiny), and Streamlit compare as low-code, UI layers for AI and ML models?
Dash
Posit (Shiny)
Streamlit
- Languages Supported
- Python, R, Julia, and F#
- Python and R
- Python
- OSS License
- MIT
- AGPL
- Apache 2.0
- Back-end Architecture
- Stateless
- Stateful
- Stateful
- Downloads/month
- 1M+
- 330,000
- 900,000
- Web protocol
- HTTP(S)
- Websockets
- Websockets
- Recommended deployment
- Dash Enterprise
- Posit Connect
- Streamlit Cloud
- User experience
- Web app
- Model output with controls in a Web page
- Web app
- App structure
- Multi-page
- Single page or Multi-page depending on technology used
- Multi-page
- Front end
- React
- jQuery
- React
- Interactivity
- Complete: any component can be an input/output, including tables
- Partial: some components can be inputs/outputs
- Limited: only widgets as inputs, graphs and tables can only be outputs
- Styling control
- Dash Design Kit, Basic Bootstrap, or CSS
- Basic Bootstrap or CSS
- Limited or CSS
- Crossfiltering
- ✔️
- ✔️
- ⚪
- Dynamic Layouts
- Pattern-Matching Callbacks
- ⚪
- ⚪
- Long Running Tasks
- ✔️
- ✔️
- ⚪
- Year founded
- 2017
- 2012
- 2019
- GitHub contributors
- 111
- 77
- 180
- GitHub Stars
- 18.9k
- 5k
- 25.6k