Blockquote
If it doesn't get covered later, can David talk about how the app displays on a tablet or phone, and is it still the 12-column layout under the hood?
shinydashboard, bs4Dash render pretty well on mobile. To fine tune your app, it really depends on specific elements that do not natively scale. Especially on tablet, you might have the worst layout since it is intermediate between desktop and cellphone. In that case, I suggest you to have a look at the following piece of code:
$(document).on('shiny:connected', function(event) {
var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
Shiny.onInputChange('isMobile', isMobile);
});
In this code, I ask my web browser if I am on a mobile platform and the result is stored in a custom shiny input using the Shiny.onInputChange. You could also use the Shiny.setInputValue. Then on the server side, I can conditionally setup my UI according to the value of input$isMobile. You might also want to track the size of your screen and adapt your app accordingly if it natively does not fit well:
$(document).ready(function() {
var screenInfo = {width: $(window).width(), height: $(window).height()};
Shiny.onInputChange("screenSize", screenInfo);
});
I am currently working on a template for mobile based on the fantastic framework7. It is called shinyF7 but see it like a miniUI 2.0