Interactive Rmarkdown documents, particularly with flexdashboard, are enticing, but everytime I go and try to build anything inside a Rmarkdown document with “runtime: shiny” in the frontmatter, I end up relatively quickly reverting back to a “conventional” shiny application because I can’t easily debug in interactive Rmarkdown. Part of this is because the document must be “run”, and by default, Rstudio “runs” it in a separate session that the user can’t interact with. So any
browser() statements are effectively ignored.
Is there a way to use
browser() or something equivalent in an interactive Rmarkdown document? Are there other some best practices for building up a Shiny application (in Rmarkdown or otherwise)? For me, writing a shiny application typically involves dropping into a debugger from inside a
render* statement and writing the code snippet I need while in the debugger. This works for me because then I can instantly run and test the code snippet right at the console. A key part of why this works is that
browser() gets me into the environment where the expression will be actually be evaluated. Is there some better way to achieve this?
I’m eager to hear how others build up interactive Rmarkdown documents.