Awesome R Shiny
A curated list of resources for R Shiny. This awesome list was inspired by https://github.com/dpastoor/awesome-shiny. Also see Awesome-shiny-apps-for-statistics
Awesome-R!
This list is currently featured onResources
General
Community
- Shiny Server Forum
- StackOverflow Questions
- R-bloggers
- Google Group
- RStudio Community
- rOpenSci
- R-Shiny on Reddit
- RGov - Government network for R/Shiny
Deployment
Self Hosting
- Shiny Server - Back end software that builds a web server for shiny apps.
- RStudio Connect - Back end software for hosing shiny applications, Rmarkdown... plus other features for enterprise contexts.
- Shinyproxy - Uses containers for hosting shiny apps and a Java server control and proxy traffic to the app containers. How-to Blog.
Platform As A Service (PAAS)
- ShinyApps.io - Rstudio's PAAS specifically for hosting shiny apps.
- Heroku - General cloud application platform that can be utilised by shiny apps with these buildpack scripts.
Tutorials
- The R-Podcast
- Episode 15: Introduction to Shiny
- Episode 16: Interview with Dean Attali
- Episode 17: A simply Radiant Chat with Vincent Nijs
- Episode 18: Interviews with the R-Studio Team
- Episode 19: Talking Shiny at R-Studio Conf wiht Barabara Borges and Dean Attali
- Episode 21: Talking Rcpp and More with Dirk Eddelbuettel
- R-Studio (video)
- RStartHere
- Effective Reactive Programming – Part 1 & Part 2
- Coordinated multiple views (linked brushing)
- Building interactive tools for exploratory data analysis (gadgets)
- Improvements in deploying apps
- Modularizing Shiny app code
- Shiny UI
- Debugging Techniques
- Profiling and Performance
- Interfacing DataTables
- Complex application layouts with Grid Style Sheets
- Building Dashboards
- R-Studio (YouTube)
- R-Studio (Vimeo)
- DataCamp
- Dean Attali
- 2018 Blog Post: shinyalert: Easily create pretty popup messages (modals) in Shiny
- Blog Post: Building Shiny apps - an interactive tutorial
- Blog Post: Shiny tips & tricks for improving your apps and solving common problems
- Blog Post: How to get your very own RStudio Server and Shiny Server with DigitalOcean
- Blog Post: Mimicking a Google Form with a shiny app
- Blog post: Persistent data storage (and retrieval) in Shiny apps
- Blog post: How to set-up shiny server on Ubuntu 14.04
- Course: Stat545
- Advanced-Shiny
- Joe Cheng
- Abhinav Agrawal (YouTube)
- AHmed HAsan (YouTube)
- Zev-Ross
- Shiny Based Tablet or Desktop App
- Cheat Sheets
- I-BioStat - Tutorial in R-Shiny
- Neon Data Skills - RShiny basics
- How to write web apps in R with Shiny
- Deploying Shiny as a Portable Desktop App
- CI/CD with Shiny and Kubernetes
- Shiny Server on Docker: CentOS 7 Edition
- Use Docker to distribute and run Shiny apps
- Dockerizing a Shiny App
- Cookie based authentication with Shiny
- Dynamically Generate Shiny UI
- Speed Up Shiny Coding with Data
Tools
Packages
- R-Studio
- shinydashboard - A package that makes it easy to use Shiny to create dashboards.
- shinythemes - A package that provides some Bootstrap themes for use with Shiny.
- shinygadgets - A package for R that helps you create interactive tools based on the Shiny web framework, that assist in data analysis tasks.
- miniUI - Provides UI widget and layout functions for writing Shiny apps that work well on small screens.
- dashboardthemes - An experimental R package to provide custom theme options for Shinydashboard applications
- shinyAce - Integrate ace editor with shiny.
- shinyBS - Twitter Bootstrap Components for Shiny.
- shinyjs - Common javascript operations in shiny via R code.
- colourpicker - Colour picker widget that can be used in different contexts in R.
- shinyEvents - Alternative way to build shiny apps based on event handlers.
- ShinySky - Various UI widgets/components not part of Shiny e.g. alerts, styled buttons.
- radiant - Business analytics using R and Shiny.
- shinyTree - Enables Shiny application developers to use the jsTree library in their applications.
- shinystan - Provides visual and numerical summaries of model parameters and convergence diagnostics for MCMC simulations.
- shinyjqui - jQuery UI interactions and effects for shiny.
- bsplus - Shiny and R Markdown addons to Bootstrap 3.
- shinyFiles - Extends the functionality of shiny by providing an API for client side access to the server file system.
- shinyDND - Create Shiny drag and drop elements in R.
- shinyforms - Easily create questionnaire-type forms with Shiny.
- ECharts2Shiny - Insert interactive charts from ECharts into Shiny.
- shinyFeedback - Display user feedback along side Shiny inputs.
- shinycssloader - Add CSS loader animations to Shiny outputs.
- regexSelect - Enable regular expression searches within a shiny selectize object.
- rclipboard - clipboard.js for R/Shiny Applications.
- directoryInput - Widget for interactive selection of directories.
- shinymaterial - Implements Google Material Design in Shiny Applications.
- shinysense - Series of Shiny modules to help Shiny sense the world around it.
- shinyWidgets - Extend input widgets available in Shiny.
- ggedit - A Shiny gadget for exploring ggplot objects.
- shinytest - Automated testing for shiny apps.
- timevis - Create interactive timeline visualizations in R.
- shinytoastr - Notifications in Shiny, via toastr.
- shiny.collections - Google Docs-like live collaboration in Shiny
Integrations
- Tableau - Host a Shiny App in Tableau.
- HTML Widgets/Javascript
- Crosstalk - Extends htmlwidgets with functionality for implementing cross-widget interactions.
- DT - Provides a function
datatable()
to display R data via the DataTables javascript library. - leaflet - JavaScript library for creating dynamic maps that support panning and zooming along with various annotations like markers, polygons, and popups.
- d3heatmap - Implements a D3 heatmap htmlwidget.
- dygraphs - R interface to the dygraphs JavaScript charting library. It provides rich facilites for charting time-series data in R.
- DiagrammeR - Tool for creating diagrams and flowcharts using Graphviz and Mermaid.
- MetricsGraphics - Enables easy creation of D3 scatterplots, line charts, and histograms.
- networkD3 - Graph data visualization with D3.
- rthreejs - 3D scatterplots and globes.
- rbokeh - Interface to Bokeh that provides a flexible, powerful, declarative framework for creating interactive plots.
- plotly - Easily translate your ggplot2 graphics to an interactive web-based version, and also provides bindings to the plotly.js graphing library.
- formattable - This package is designed for applying formatting on vectors and data frames to make data presentation easier, richer, more flexible and hopefully convey more information.
- Gallery of HTML Widgets - Gallery of all R htmlwidgets.
- manipulateWidget
- gglabeller - Gadget that enables selecting points on a ggplot to label.
- billboarder - Htmlwidget for billboard.js.
- flexdashboard - Easy interactive dashboards for R.
- Shiny in Rmarkdown - Run shiny apps in rmarkdown documents.
- ggvis - Make it easy to describe interactive web graphics in R.
- RInno - Install local shiny apps by providing an interface between R and Inno Setup, (Windows Only).
- googleVis - An interface between R and the Google's charts tools.
- pool - Abstract away the logic of connection management and the performance cost of fetching a new connection from a remote database.
People
- Dean Attali
- Joe Cheng
- Winston Chang
- Barbara Borges Ribeiro
- Ramnath Vaidyanathan
- Jeff Allen
- Vincent Nijs
- Sebastian Kranz
Books
- Web Application and Development Using Shiny (2nd edition) - by Chris Beely
- Learing Shiny - by Hernán G. Resnizky
Galleries
- R-Studio
- Shiny User Showcase - Featured user Shiny apps.
- Shiny Gallery - Shiny apps and much more.
- Showmeshiny - Huge gallery of Shiny apps.
- Shiny Widgets - Experience statistics with apps designed for teaching and analysis.
- Html Widgets
- Html Widgets Showcase - Featured Html widgets.
- Html Widgets Gallery - User submitted Html widgets.
- R Graph Catalog - Complement to the book “Creating More Effective Graphs” by Naomi Robbins.
App Examples
- R-Studio Examples
- Waze - Community based real-time traffic and navigation info.
- Astra Zenca - Data science tools used to create medicines more efficiently.
- shiny-salesman - Traveling salesman app.
- Shiny GEM - ‘GEM’ stands for ‘general exploratory methods’, as this app aims to simplify a variety of basic EDA tasks.
- shinyEd - Statistics education apps.
- shinyData - Interactive data analysis and visualization.
- STARTapp - Transcriptome Analysis Resource Tool.
- shiny-phyloseq - Provides a graphical user interface to the microbiome analysis package for R, called phyloseq.
- shiny-ampvis2 - Provides some basic functionality for using ampvis2 to visualize microbiome data.
- Google Analytics Dashboard - Demo on how to build your own Google Analytics dashboard with R, Shiny and MySQL.
- BallR - Uses the NBA Stats API to visualize every shot taken by a player during an NBA season dating back to 1996.
- DDCV - Evaluate drug-drug interactions.
- Github: Hot or Not - Analyzes what repos are hot on github.
- GenMap-Comparator - Compare genetic maps with D3 & Shiny.
- MAVIS - MAVIS: Meta Analysis via Shiny.
- shinyTreeViewer - Simple treeviewer based on the R packages ape and phangorn.
- iTunes Reviews Analysis - iTunes App Store Reviews Text Extractor and Text Analysis Web App.
- NYT Bar Optimizer - Optimize your liquor cabinet using cocktail recipes from New York Times Cooking.
- Lights Out game - Lights Out is a puzzle game consisting of a grid of lights that are either on or off.
- Australian Tax Office:
- Workforce Demographics - View a range of workforce related demographics information across an organisation. Source Code.
- Bivariate Demographics - Examine how an organisation is performing on a range of demographic information. Source Code.
- Shiny Database App (CRUD) - An example of a CRUD shiny app with accompanying how-to post.
- taskviewr - Browse R packages by CRAN Task Views and license info.
- homebrewR - Explore and compare beer recipes.
- Vinylspotting - Visualize and explore record collections for Discogs users.
- polMonitor - Monitor police violence in the United States.
- OCRinShiny - OCR an image with the tesseract package.
- ExpressionDB - Host gene expression/ontology data with Shiny.
- Interactive PCA Explorer - Explore a PCA plots and data.
- contributr - Find beginner GitHub issues to contribute to.
- VisualPruner - Cohort selection in observational studies.
- Opioid Overdose Shiny App - Visualize opioid overdose data.
- Shiny App Spotify - Connect with spotify's API and generate personalized playlist recommendations through machine learning and data visualization.
- National Parks Weather - Visualize National Parks locations and weather using user input.
- html2r - Convert HTML to R.