What this book covers
Chapter 1, Getting Started with R and Shiny!, runs through the basics of statistical graphics, data input, and analysis with R. We also discuss data structures and programming basics in R in order to give you a thorough grounding in R before we look at Shiny.
Chapter 2, Building Your First Application, helps you build your first Shiny application. We begin with simply adding interactive content to a document written in markdown, and then delve deeper into Shiny, building a very primitive minimal example, and finally, looking at more complex applications and the inputs and outputs necessary to build them.
Chapter 3, Building Your Own Web Pages with Shiny, covers how Shiny works with existing web content in HTML, CSS, and JavaScript. We discuss the Shiny helper functions that allow you to add a custom HTML to a standard Shiny application and how to build a minimal example of a Shiny application in your own raw HTML with Shiny running in the background. Finally, we also discuss using JavaScript/ jQuery with Shiny with examples given to add bells and whistles to an existing application as well as providing powerful interactive tools to communicate between the web page and Shiny using JavaScript.
Chapter 4, Taking Control of Reactivity, Inputs, and Outputs, covers advanced functions in Shiny in detail, in particular, changing the UI based on user input or the state of the application, finely controlling reactivity in your application, and advanced methods used for reading user input as well as specialized graphics and data tables. We also cover debugging, which can pose challenges in Shiny applications.
Chapter 5, Advanced Applications I – Dashboards, contains detailed information of the layout in Shiny applications. We discuss simple ways to use layout functions described earlier in the book, and how to use the Bootstrap style on which Shiny is based. Finally, we also cover how a full dashboard is produced with several pages, specialized input and output widgets, and other advanced features accessible when using Shiny dashboards.
Chapter 6, Advanced Applications II – Using JavaScript Libraries in Shiny Applications, reviews some of the many JavaScript libraries, which can easily be integrated into Shiny, and how to use them in your own Shiny applications. We also cover how to draw graphics, which describe trends and predictions, heatmaps and highly interactive charts using D3, and 3D plots, along with an advice on how best to ensure that they work within Shiny.
Chapter 7, Sharing Your Creations, discusses the many different ways to share Shiny applications with your end users. There are many ways of doing this and they are described in detail, including the use of the Gist and GitHub website, locally using a simple ZIP file, hosting them yourself on your own server, or making use of RStudio's hosting services. We also cover reading and writing data using Shiny in a server (as opposed to a local) environment.