Before we can start a simple application, we need to understand more about Shiny widgets and how their visual design impacts development. The other toolkits that we've looked at didn't need this understanding to start using the API, but the experimental status of the higher-level APIs in Shiny means that even a hello world application requires some understanding of how the toolkit functions.
Before we get into the details of the widgets that Shiny provides and how to work with them, let's take a look at the design and iconography of the Shiny project. This design takes a different approach to the toolkits we've previously looked at in this book, but it should be familiar to any Android app developers or users of the Google product suite.