library(crosstalk)
library(leaflet)
library(DT)
library(plotly)

# Wrap data frame in SharedData
sd <- SharedData$new(quakes[sample(nrow(quakes), 100),])

# Create a filter input
filter_slider("mag", "Magnitude", sd, column=~mag, step=0.1, width=250)
# Use SharedData like a dataframe with Crosstalk-enabled widgets
bscols(
  leaflet(sd) %>% addTiles() %>% addMarkers(),
  datatable(sd, extensions="Scroller", style="bootstrap", class="compact", width="100%",
    options=list(deferRender=TRUE, scrollY=300, scroller=TRUE))
)
sd2 <- SharedData$new(mtcars)
filter_slider("mpg", "Milhas por Litro", sd2, column=~mpg, step=0.1, width=250)
bscols(plot_ly(sd2, x = ~mpg) %>% add_histogram(name = "plotly.js")
)

Works