StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Utilities
  3. Business Intelligence
  4. Business Intelligence
  5. Shiny vs Streamlit

Shiny vs Streamlit

OverviewComparisonAlternatives

Overview

Shiny
Shiny
Stacks208
Followers228
Votes13
Streamlit
Streamlit
Stacks404
Followers407
Votes12
GitHub Stars42.1K
Forks3.9K

Shiny vs Streamlit: What are the differences?

In the world of web application frameworks, Shiny and Streamlit stand out as two popular options for building interactive and data-driven applications. Let's explore the key differences between them.

  1. Design Philosophy: Shiny is designed for R users, focusing on providing an interactive web framework for R-based data analysis and visualization. On the other hand, Streamlit emphasizes simplicity and ease of use, aiming to enable Python developers to quickly build and share data applications with minimal code.

  2. Language: Shiny primarily uses R as its programming language, allowing R developers to leverage their existing skills and libraries. In contrast, Streamlit is based on Python, a widely used language for data analysis and machine learning, enabling Python developers to utilize their knowledge and take advantage of the vast Python ecosystem.

  3. Deployment: Shiny applications are typically deployed on Shiny Server or Shinyapps.io, which require a separate server infrastructure for hosting the applications. In contrast, Streamlit applications can be easily deployed on popular cloud platforms like Heroku, AWS, or even as a Docker container, providing more flexibility and ease of deployment.

  4. Ecosystem: Shiny benefits from the large and mature R ecosystem, including a wide range of statistical and visualization packages. This allows Shiny developers to tap into a vast resource of R packages to enhance their applications. Streamlit, being built on Python, leverages the extensive Python ecosystem, which offers a multitude of libraries for various purposes, from data manipulation to machine learning.

  5. Reactive Programming: Shiny utilizes a reactive programming model, allowing developers to create dynamic applications by specifying reactive dependencies between input data and output visualizations. Streamlit, on the other hand, follows a more imperative approach, where developers explicitly define the code flow and interactions within the application, making it easier for Python developers to grasp and build applications quickly.

  6. Ease of Use: Shiny provides a higher level of abstraction, allowing developers to create interactive web applications with minimal HTML or CSS knowledge. It offers user-friendly components, including built-in widgets and layouts, simplifying the development process. Streamlit, inspired by Python's simplicity, enables developers to quickly iterate and build data applications with straightforward Python code, making it accessible to both beginners and experienced developers alike.

In summary, Shiny caters more towards R developers and provides a mature ecosystem, Streamlit appeals to Python developers with its simplicity and ease of deployment.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Detailed Comparison

Shiny
Shiny
Streamlit
Streamlit

It is an open source R package that provides an elegant and powerful web framework for building web applications using R. It helps you turn your analyses into interactive web applications without requiring HTML, CSS, or JavaScript knowledge.

It is the app framework specifically for Machine Learning and Data Science teams. You can rapidly build the tools you need. Build apps in a dozen lines of Python with a simple API.

-
Free and open source; Build apps in a dozen lines of Python with a simple API; No callbacks; No hidden state; Works with TensorFlow, Keras, PyTorch, Pandas, Numpy, Matplotlib, Seaborn, Altair, Plotly, Bokeh, Vega-Lite, and more
Statistics
GitHub Stars
-
GitHub Stars
42.1K
GitHub Forks
-
GitHub Forks
3.9K
Stacks
208
Stacks
404
Followers
228
Followers
407
Votes
13
Votes
12
Pros & Cons
Pros
  • 8
    R Compatibility
  • 3
    Free
  • 2
    Highly customizable and extensible
Pros
  • 11
    Fast development
  • 1
    Fast development and apprenticeship
Integrations
No integrations available
Python
Python
Plotly.js
Plotly.js
PyTorch
PyTorch
Pandas
Pandas
Bokeh
Bokeh
Keras
Keras
NumPy
NumPy
Matplotlib
Matplotlib
TensorFlow
TensorFlow
Altair GraphQL
Altair GraphQL

What are some alternatives to Shiny, Streamlit?

Metabase

Metabase

It is an easy way to generate charts and dashboards, ask simple ad hoc queries without using SQL, and see detailed information about rows in your Database. You can set it up in under 5 minutes, and then give yourself and others a place to ask simple questions and understand the data your application is generating.

TensorFlow

TensorFlow

TensorFlow is an open source software library for numerical computation using data flow graphs. Nodes in the graph represent mathematical operations, while the graph edges represent the multidimensional data arrays (tensors) communicated between them. The flexible architecture allows you to deploy computation to one or more CPUs or GPUs in a desktop, server, or mobile device with a single API.

scikit-learn

scikit-learn

scikit-learn is a Python module for machine learning built on top of SciPy and distributed under the 3-Clause BSD license.

Superset

Superset

Superset's main goal is to make it easy to slice, dice and visualize data. It empowers users to perform analytics at the speed of thought.

PyTorch

PyTorch

PyTorch is not a Python binding into a monolothic C++ framework. It is built to be deeply integrated into Python. You can use it naturally like you would use numpy / scipy / scikit-learn etc.

Cube

Cube

Cube: the universal semantic layer that makes it easy to connect BI silos, embed analytics, and power your data apps and AI with context.

Power BI

Power BI

It aims to provide interactive visualizations and business intelligence capabilities with an interface simple enough for end users to create their own reports and dashboards.

Keras

Keras

Deep Learning library for Python. Convnets, recurrent neural networks, and more. Runs on TensorFlow or Theano. https://keras.io/

Kubeflow

Kubeflow

The Kubeflow project is dedicated to making Machine Learning on Kubernetes easy, portable and scalable by providing a straightforward way for spinning up best of breed OSS solutions.

TensorFlow.js

TensorFlow.js

Use flexible and intuitive APIs to build and train models from scratch using the low-level JavaScript linear algebra library or the high-level layers API

Related Comparisons

Postman
Swagger UI

Postman vs Swagger UI

Mapbox
Google Maps

Google Maps vs Mapbox

Mapbox
Leaflet

Leaflet vs Mapbox vs OpenLayers

Twilio SendGrid
Mailgun

Mailgun vs Mandrill vs SendGrid

Runscope
Postman

Paw vs Postman vs Runscope