General Shiny Resources
Books
- Mastering Shiny, by Hadley Wickham
- Engineering Production-Grade Shiny Apps, by Colin Fay, Sébastien Rochette, Vincent Guyader & Cervan Girard
- Building Web Apps with R, by Lisa DeBruine – a short course (paired with an online book with instructions, resources, etc.)
Tutorials
- Building Shiny apps - an interactive tutorial, by Dean Attali
- Speeding Up R Shiny, by Jakub Sobolewski in R bloggers – details methods on improving app performance
- The Basics of Building Shiny Apps in R, by Allison Horst
Testing
- {shinytest2}: Unit testing for Shiny applications, rstudio::conf(2022) talk by Barret Schloerke
- {shinytest2} Testing Shiny with {testthat}, 2022 Appsilon Shiny Conference talk by Barret Schloerke (GitHub repo)
- Shiny testing overview, by Winston Chang – this article discussed the
shinytest2
predecessor,shinytest
(which is now entering maintenance mode), but provides some helpful context and is worth a read - A Robust Framework for Automated Shiny App Testing, an rstudio::conf(2022) talk by Sydaeka Watson – a really cool case study / overview of a (slightly more complex) framework for automated Shiny app testing
- Introduction to Snapshot Testing in R, by Indrajeet Patil – a broader presentation on what is snapshot testing, why it’s necessary, and its implementation in R in
{testthat}
package and extensions
Modules
- Modularizing Shiny App Code & associated materials, by Garrett Grolemund & Joe Cheng at the 2016 Shiny Developer’s Conference – NOTE: This 2016 talk is an excellent introduction to modules and is definitely worth a watch, especially because we just explored the exact example demoed by G. Grolemund. Please note, however, that Shiny modules were overhauled in 2020 with the introduction of
moduleServer()
. Content covered in our modules slides has been updated to reflect those changes and therefore differs slightly from what’s taught in this video. - Mastering Shiny, Ch. 19 - Shiny Modules, by Hadley Wickham
- Modularizing Shiny app code, by Winston Chang
- Effective use of Shiny modules in application development, studio::conf(2019) talk by Eric Nantz
- A beginners guide to Shiny modules, by Emily Riederer
Misc. Shiny Tools
- R Shiny & FontAwesome Icons – How to Use Them in Your Dashboards, by Dario Radečić in R Bloggers – instructions for setting up your fontawesome kit
- Shiny UI Editor and Nick Strayer’s rstudio::conf(2022) talk introducing it – a visual tool for building the UI portion of a Shiny application that generates clean and human-readable code
- The
{golem}
package provides an opinionated framework for building production-grade shiny applications and is a part of a growing ecosystem of packages called the{golemverse}
. There are lots of accompanying learning materials, including the book, Engineering Production Grade Shiny Apps, by Colin Fay, Sébastien Rochette, Vincent Guyader & Cervan Girard.
UX / UI
Accessibility
Colors
- Palette Generator, by Learn UI Design – supply a starting color(s) and this tool will generate a palette, single hue, or divergent color scheme
- Viz Palette, by Elijah Meeks and Susie Lu – a tool that shows you how well your chosen colors work for tiny lines and big areas, warns if you have colors sharing the same name (which can make it more challenging to talk about your designs, say, in a presentation), and can simulate color vision deficiencies
- Shade Generator – a tool for generating shade scales
- Colorblind Safe Color Schemes, by the NCEAS Science Communication Resource Center – tips and examples of colorblind-friendly color palettes
- Color review, by Anton Robsarve – for understanding foreground and background contrasts
- Your Friendly Guide to Colors in Data Visualization, by Lisa Charlotte Muth – a blog post on useful tools for deciding data viz color palettes
- What to consider when choosing colors for data visualization, by Lisa Charlotte Muth – a blog post with explanations and examples
- Subtleties of Color, by Robert Simmon – a 6 part blog post series from NASA Earth Observatory about the use of color to map Earth observation data
Alternative (alt) text
- How to write good alternative descriptions for your data visualization, by Amy Cesal – great instructions (and examples) on how to construct informative alt text for data visualizations
- Writing Alt Text for Data Visualization, also by Amy Cesal – more great example of alt text for data viz!
- #TidyTuesday alt text instructions – a simple formula for writing alt text for data visualizations, as recommended for #TidyTuesday participants
Data Visualization
There are so many incredible data viz resources. Check out the resources page on the EDS 240: Data Visualization & Communication course website for many of my favorites.