A little trick for debugging Shiny

This is gonna be a short post about a little trick I’ve been using while developing Shiny Apps. (Spoiler: nothing revolutionary)

A browser anywhere, anytime

The first thing to do is to insert an action button, and a browser() in the observeEvent() watching this button. This is a standard approach: at any time, you just press this button, and you’re inside the Shiny Application — then, you can access the value of the reactiveValues and run the reactive elements, accessing the values they have at the moment you’ve pressed the button.

This approach works, and it’s robust. But here’s the issue: it’s kind of cumbersome to add/remove or comment/uncomment this button when you want to show, make screenshots, or simply remove this button to have a full view of the app.

So here’s a little trick that uses JavaScript to hide the button, and show it using the JavaScript console from your web browser: