Easy interactive web applications with R
Branch: master
Clone or download
Latest commit c790346 Feb 21, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
R Merge pull request #2284 from chasemc/patch-1 Feb 21, 2019
inst update man file name to reactlog from showReactLog in inst/staticdocs… Feb 1, 2019
man-roxygen Add documentation about using selected=character(0). Closes #1182 Aug 12, 2016
man document time for reactlogShow Feb 1, 2019
manualtests/async Fix bug where req(cancelOutput=TRUE) would leave things grey Feb 9, 2018
res Update documentation for renderXX Feb 14, 2013
smoketests More tests Nov 16, 2015
srcjs merge in master Nov 27, 2018
tests Fix test Feb 11, 2019
tools use original yarn lock file Jun 20, 2018
.Rbuildignore Add to .Rbuildignore Feb 9, 2018
.Rinstignore Fix Rmd build tooling Apr 3, 2014
.gitattributes Treat shiny.js as binary Apr 23, 2015
.gitignore clean up tools readme to use yarn over global grunt-cli install Jun 20, 2018
.travis.yml Remove sourcetools workaround for Travis Sep 13, 2016
CONTRIBUTING.md Update links in CONTRIBUTING.md May 23, 2017
DESCRIPTION bump dev version of reactlog. remove reactlog::reactlog_add_shiny_res… Feb 15, 2019
LICENSE Upgrade FontAwesome to 5.3.1 (#2186) Sep 18, 2018
NAMESPACE Add methods: reactlog, reactlogShow, and reactlogReset. Depricate sho… Jan 30, 2019
NEWS.md Merge pull request #2311 from rstudio/bookmark-dot Feb 21, 2019
README.md Update license information in README Oct 25, 2018
TODO-promises.md Update TODO-promises.md Feb 13, 2018
appveyor.yml For installation of Rtools on Appveyor Feb 16, 2018
cran-comments.md Clear cran comments May 18, 2015
shiny.Rproj Remove QuitChildProcessesOnExit: Default option Nov 15, 2018



Travis: Travis Build Status

AppVeyor: AppVeyor Build Status

Shiny is a new package from RStudio that makes it incredibly easy to build interactive web applications with R.

For an introduction and examples, visit the Shiny Dev Center.

If you have general questions about using Shiny, please use the RStudio Community website. For bug reports, please use the issue tracker.


  • Build useful web applications with only a few lines of code—no JavaScript required.
  • Shiny applications are automatically "live" in the same way that spreadsheets are live. Outputs change instantly as users modify inputs, without requiring a reload of the browser.
  • Shiny user interfaces can be built entirely using R, or can be written directly in HTML, CSS, and JavaScript for more flexibility.
  • Works in any R environment (Console R, Rgui for Windows or Mac, ESS, StatET, RStudio, etc.).
  • Attractive default UI theme based on Bootstrap.
  • A highly customizable slider widget with built-in support for animation.
  • Prebuilt output widgets for displaying plots, tables, and printed output of R objects.
  • Fast bidirectional communication between the web browser and R using the httpuv package.
  • Uses a reactive programming model that eliminates messy event handling code, so you can focus on the code that really matters.
  • Develop and redistribute your own Shiny widgets that other developers can easily drop into their own applications (coming soon!).


To install the stable version from CRAN, simply run the following from an R console:


To install the latest development builds directly from GitHub, run this instead:

if (!require("devtools"))

Getting Started

To learn more we highly recommend you check out the Shiny Tutorial. The tutorial explains the framework in-depth, walks you through building a simple application, and includes extensive annotated examples.

Bootstrap 3 migration

Shiny versions and below used the Bootstrap 2 web framework. After, Shiny switched to Bootstrap 3. For most users, the upgrade should be seamless. However, if you have have customized your HTML-generating code to use features specific to Bootstrap 2, you may need to update your code to work with Bootstrap 3.

If you do not wish to update your code at this time, you can use the shinybootstrap2 package for backward compatibility.

If you prefer to install an older version of Shiny, you can do it using the devtools package:

devtools::install_version("shiny", version = "")

Development notes

The Javascript code in Shiny is minified using tools that run on Node.js. See the tools/ directory for more information.

Guidelines for contributing

We welcome contributions to the shiny package. Please see our CONTRIBUTING.md file for detailed guidelines of how to contribute.


The shiny package as a whole is licensed under the GPLv3. See the LICENSE file for more details.