How do Dash, Shiny, and Streamlit compare as low-code,
UI layers for AI and ML models?

DashShinyStreamlit
Languages SupportedPython, R, and JuliaR onlyPython only
OSS LicenseMITAGPLApache 2.0
Back-end ArchitectureStatelessStatefulStateful
Downloads/month350,000370,000100,000
Web protocolHTTP(S)WebsocketsWebsockets
Recommended deploymentKubernetes (Dash Enterprise)Shiny Server Pro (RStudio Connect)Heroku
User experienceWeb appModel output with controls in a Web pageNotebook with controls
App structureMulti-pageSingle pageNotebook with code
Front endReactjQueryReact
InteractivityComplete: any component can be an input/output, including tablesPartial: some components can be inputs/outputsLimited: only widgets as inputs, graphs and tables can only be outputs
Styling controlDash Design Kit, Basic Bootstrap, or CSSBasic Bootstrap or CSSLimited
Crossfiltering✔️✔️
Dynamic LayoutsPattern-Matching Callbacks
Long Running Tasks✔️
Year founded201720122019
Funding (USD)$20M$8M$27M
GitHub contributors475554
GitHub Stars12.5k3.9k10.1k