You can easily compose multiple htmlwidgets into a dashboard using the flexdashboard package, which features flexible and easy to specify row and column-based layouts for multiple widgets.
Widgets can be wired together using the crosstalk package. Linked brushing between widgets and client side filtering are currently supported. Use Shiny to create more sophisticated interactions.
Learn how to create an R binding for your favorite JavaScript library and enable use of it in the R console, in R Markdown documents, and in Shiny web applications.