Workshop materials for Getting Started with Shiny from rstudio::conf 2022

View the Project on GitHub rstudio-conf-2022/get-started-shiny

Getting Started with Shiny

rstudio::conf 2022

🗓️ July 25 and 26, 2022

⏰ 9:00 - 17:00

🏨 National Harbor 6 / 7


What will I learn?

Shiny is an R package that makes it easy to build interactive web apps straight from R. This workshop will start at the beginning: designing and creating user interfaces, learning and mastering the reactive model that connects your R code to the interface, and deploying apps publicly and privately. Then we’ll work with intermediate-level tools: communicating with outside files and databases, debugging, modularizing. You’ll build a range of (closely related) app formats in wide use: interactive Rmd, browser based apps, tutorials, and dashboards. In the end, you’ll be a confident Shiny user, able to design interactive apps to achieve your purpose and produce a polished and professional implementation.

Should I take the course?

You should be comfortable with the basics of R, such as writing functions, indexing vectors and lists, debugging simple errors, and working with data structures like data frames.

Your (lack of) previous experience with Shiny is not an issue. If you have experience, you’ll see things in a new way. If you don’t, we’ll get you started on the right footing.


This workshop will be a hands-on introduction to designing, implementing and deploying Shiny applications. All participants will be provided access to a preconfigured RStudio cloud environment for running example code and completing hands-on exercises. As such, you will only need a laptop capable of connecting to wifi inorder to fully participate. If you would instead prefer to run things locally, please make sure that you have installed the most recent version of R (4.2+) and RStudio (2022.02.3+), you should also have the latest version of shiny (1.7.1+) and tidyverse (1.3.1+) packages installed / updated.


Day 1 - Slides: 📓 Welcome, 📓 Day 1

Time Activity
09:00 - 09:30 Welcome
09:30 - 10:30 Intro to Shiny
10:30 - 11:00 Coffee break
11:00 - 12:30 Basic Reactivity
12:30 - 13:30 Lunch break
13:30 - 15:00 Observers & reactives
15:00 - 15:30 Coffee break
15:30 - 17:00 Downloads

Day 2 - Slides: 📓 Day 2

Time Activity
09:00 - 10:30 shinydashboard & modules
10:30 - 11:00 Coffee break
11:00 - 12:30 Theming & deploying apps
12:30 - 13:30 Lunch break
13:30 - 15:00 Dynamic UIs
15:00 - 15:30 Coffee break
15:30 - 17:00 Q&A + Wrapup

Instructor Bio

Colin Rundel is an Associate Professor of the Practice at Duke University where he has been teaching since 2012. His work focuses on teaching statistical computing to both undergraduate and graduate students in both R and Python. He has been teaching and using Shiny since 2015.

This work is licensed under a Creative Commons Attribution 4.0 International License.