The R-Podcast Episode 15: Introduction to Shiny

[This article was first published on The R-Podcast (Podcast), and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Just in time for the new year is a new episode of the R-Podcast! I give a brief introduction to the Shiny package for creating web applications using R code, provide some of my tips and tricks I have learned (sometimes the hard way) when creating applications, and point to excellent resources and example apps in the community that show the immense potential at your fingertips. You will see that has gotten a major overhaul, and as a consequence the RSS feeds have changed slightly. Be sure to check out the Subscribe page for the updated feeds, but all of the previous episodes have been migrated successfully. As always you can provide your feedback in multiple ways:

  • New Feature: Provide a comment on this episode post directly (powered by the Disqus commenting system)
  • Email the show at thercast[at]
  • Use the new Contact Form directly on the site.
  • Leave a voicemail at at +1-269-849-9780

Happy New Year and I hope you enjoy the episode!

Direct Download: [mp3 format] [ogg format]

Episode 15 Show Notes gets a face lift!

  • Now powered by the awesome Nikola static site generator. Able to write all content using markdown!
  • Potential to use R-Markdown for future content! See Edward Borasky’s excellent tutorial:
  • Shout out to Roberto and the rest of the Nikola contributors for helping me fix some key migration issues! Still a few tweaks to go, pardon the dust as I continue to make improvements.
  • Now with SSL support via the lets encrypt initiative, and the certificate is absolutely free!

My shiny development tips

  • Start with the excellent Shiny development portal by RStudio as well as recent webinars
  • Also check Dean Attali’s great tutorial on his blog
  • Shiny UI: Make sure to not have any missing commas or too many commas!
  • On top of the official shiny app gallery, also check out the shiny user showcase as well as for great examples.
  • Many shiny functions (such as reactive) allow you to supply R code enclosed in {} as the first parameter. Like writing a regular R function, make sure that you explicitely call the desired result object at the end or use a return call.
  • Using the sidebar layout is good for apps with a few UI controls and output containers, but my complex apps benefit from the flexibility offered by the grid layout system. See the layout article for more details.

Apps that helped me learn the power of Shiny

Keeping up with the Shiny community

New features to watch

R Community Roundup

Building Widgets blog by Kent Russell: Great showcase of converting many different javascript libraries for use in R, many of which are a great fit for Shiny.

Package Pick


ggplot2 version 2.0.0 released!
  • “Perhaps the bigggest news in this release is that ggplot2 now has an official extension mechanism. This means that others can now easily create their on stats, geoms and positions, and provide them in other packages. This should allow the ggplot2 community to flourish, even as less development work happens in ggplot2 itself. See vignette(“extending-ggplot2”) for details.
  • Additional details can be seen in the release notes


  • Leave a comment on this episode’s post
  • Email the show: thercast[at]
  • Use the R-Podcast contact page
  • Leave a voicemail at +1-269-849-9780

Music Credits

To leave a comment for the author, please follow the link and comment on their blog: The R-Podcast (Podcast). offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Never miss an update!
Subscribe to R-bloggers to receive
e-mails with the latest R posts.
(You will not see this message again.)

Click here to close (This popup will not appear again)