Bookdown inside Shiny app

Is there an way to put a bookdown inside a shiny app? It would be interesting when one is needs to put everything behind login layer.

desired scenario: bs4Dash or Material dashboard. One tab would be a bookdown as is.

A bookdown website is a static website so I guess you can include in your project and serve the folder with the book by putting in www folder or explicitly serve it with shiny::addResourcePath()

For example, putting the resulting _book folder inside shiny www one would make the book available at http://shinyurl:port/_book/index.html and puting _book at the root of the project you could use addResourcePath("book", "_book") to make this url work http://shinyurl:port/book/index.html

At least I think so !

Are you using the shiny app only for login layer ? :thinking:

Thank you very much, @cderv! I followed your suggestion and it worked. I've just had to put inside an iframe to avoid css conflict since I am using {shinymaterial} framework.

shiny::tags$iframe(src = ("book/index.html"), frameborder="0", style="overflow:hidden;height:100vh;width:100%")

Sort of.... Could say that it was one of the reasons. My app do other stuff besides showing the bookdown.
But I'd like to hear more about it! Is there any convenient setup for login purposes that am I missing?

1 Like

I was asking because it seems static file hosting provider can offer login option (like Netlify it seems : https://docs.netlify.com/visitor-access/identity/) and this question was already asked but I don't know if that works or not : See Publishing a password protected rmarkdown/html file

If you try, you'll tell me ! :slight_smile:

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.