Developing and deploying large scale Shiny applications


This is a companion discussion topic for the original entry at:

Developing and deploying large scale Shiny applications

At FRISS we’ve been developing Shiny applications since the inception of Shiny itself. Over the last 5 years we’ve created a wide diversity of Shiny apps that combined use almost all of the available features in the Shiny ecosystem, ranging from stock Shiny components to modules, R6 classes, HTMLTemplates, HTMLWidgets, custom message handling and input bindings.

This overview talk shows our lessons learned over these years. To enlighten others we’ll showcase various applications that show what the Shiny framework is capable of when combined with modern web building skills. Furthermore, we show how Shiny apps can become even more powerful when they’re backed by powerful NoSQL back ends like MongoDB, Neo4j and ElasticSearch. In such cases, balancing the use of reactivity, with R6 classes and modules is especially useful. Finally, we provide insight into how large Shiny apps with many moving parts can be deployed to production servers with tools like Docker, Octopus and Consul.

Even though Shiny is often advertised as ‘no HTML, CSS or JavaScript knowledge required’, we believe that those who invest in creating a solid understanding of the former concepts can create apps which expressive power is difficult to match when combined with the already existing Shiny ecosystem.

Starting such an endeavour, however, can be intimidating. In order to help others, we’ve developed an extensive set of tutorials which show newbies how HTML, CSS and JavaScript can be used to extend Shiny. In the series we carefully explain how a complete interactive Shiny dashboard application can be constructed, including the development of various custom HTMLWidgets and modules.

Herman Sontrop - Product Owner, FRISS
FRISS is a Dutch, fast growing company with a 100% focus on fraud, risk and compliance for non-life insurance companies and is the European market leader with over 100+ implementations in more than 15 countries worldwide. The FRISS platform offers insurers fully automated access to a vast set of external data sources, which together facilitate many different types of screenings, based on knowledge rules, statistical models, clustering, text mining, image recognition and other machine learning techniques. The information produced by the FRISS platform is bundled into a risk score that provides a quantified risk assessment on a person or case, that enables insurers to make better and faster decisions.