A cookbook for Mastering Shiny

这是一本online版的shiny book, 《Mastering Shiny》,按照作者Hadley Wickham(真大神也。。)的说法,将于2020年在O'reilly系列中出版

Shiny is a framework for creating web applications using R code. It is designed primarily with data scientists in mind, and to that end, you can create pretty complicated Shiny apps with no knowledge of HTML, CSS, or JavaScript

Mastering Shinyshiny官方文档基础上做了补充,帮助shiny开发者们更好的理解shiny,使得shiny app具有更多的个性化UI,稳健的code以及更好的性能


  • Create dashboards that track important performance indicators, and facilitate drill down into surprising results.
  • Replace hundreds of pages of PDFs with interactive apps that allow the user to jump to the exact slice of the results that they care about.
  • Communicate complex models to a non-technical audience with informative visualisations and interactive sensitivity analysis.
  • Provide self-service data analysis for common workflows where replacing email requests with a Shiny app that allows people to upload their own data and perform standard analyses.
  • Create interactive demos for teaching statistics and data science concepts that allow learners to tweak inputs and observe the downstream effects of these changes in an analysis.


  • Getting started:了解shiny基本内容,例如shiny app结构,有用的UI组件以及reactive编程基础
  • Shiny in action:在了解shiny基础内容前提下,进一步学习如何其他UI类型,如dashboards和gadgets;以及通过HTML/CSS来个性化调整shiny app
  • Mastering reactivity:深入了解reactive编程的原理基础,从而进一步的创造新的shiny工具来解决实际问题
  • Taming Shiny:学习如何测试及改进shiny app性能,如何debug以及管理app的依赖


知识点主要涉及到best practices for data science,R programming以及software engineering相关内容,因此推荐书籍:

Software主要用到 RRstudio

用到的R packages如下:

  "gapminder", "ggforce", "openintro", "shiny", "shinyFeedback", 
  "shinythemes", "tidyverse", "vroom", "waiter"