Is it possible to simply embed an existing published Shiny App inside a learnr tutorial? There is great stuff out there and I'd hate to reinvent the wheel. Linking to the address just opens a new window. Is there a way to have that open inside the tutorial (i.e., like how videos are handled)?
I would check out using an knitr::include_app(url)
. This wraps around an iframe which allows displaying external urls (or shiny applications). Videos can be displayed directly on the site, but shiny applications need a backend server to process what is happening.
For more a live example, check out: https://bookdown.org/yihui/bookdown/web-pages-and-shiny-apps.html
```{r}
knitr::include_app("https://gallery.shinyapps.io/001-hello/", height = "500px")
```
You can also do this manually by adding an iframe directly. Change the src
in the line below to point to an already hosted shiny
application.
<iframe src="https://gallery.shinyapps.io/001-hello/" width="100%" height="500px" style="border:none;">
Thank you for the response. I used this code to test but all I get is a window that doesn't launch the app (or display it).
When I try to run the chunk individually, it yields the following error "Error in enc2utf8(x) : argument is not a character vector"
I can not reproduce the Error in enc2utf8(x)
.
I can reproduce the iframe not appearing in the IDE. This is unexpected. I have submitted an issue to the RStudio IDE here: https://github.com/rstudio/rstudio/issues/7104
If I clicked "Open in Browser", it works in the browser. It also works if deployed / hosted somewhere such as shinyapps.io. (Tested on a internal Connect server)
This topic was automatically closed 54 days after the last reply. New replies are no longer allowed.