shinyanimate package is an R wrapper for animate.css. It allows user to easily add animations to any UI element in shiny app using the elements id.
To install the stable CRAN version:
install.packages("shinyanimate")
To install the latest development version from GitHub:
library(devtools)
install_github('Swechhya/shinyanimate')
library(shiny)
library(shinyanimate)
<- fluidPage(
ui withAnim(),
div( id = 'shinyLogo', tags$img(src= "http://hexb.in/hexagons/shiny.png", width = "100px", height = "100px")),
actionButton(inputId = "button", label = "Animate")
)<- function(input, output, session) {
server observeEvent(input$button,{
startAnim(session, 'shinyLogo', 'shakeX')
})
}shinyApp(ui, server)
library(shiny)
library(shinyanimate)
<- fluidPage(
ui withAnim(),
div( id = 'shinyLogo', tags$img(src= "http://hexb.in/hexagons/shiny.png", width = "100px", height = "100px"))
)<- function(input, output, session) {
server observe(addHoverAnim(session, 'shinyLogo', 'pulse'))
}shinyApp(ui, server)
library(shiny)
library(shinyanimate)
<- fluidPage(
ui withAnim(),
$h1('Scroll below to see an animation'),
tagsbr(), br(), br(), br(), br(), br(), br(),
br(), br(), br(), br(), br(), br(), br(),
div( id = 'shinyLogo', tags$img(src= "http://hexb.in/hexagons/shiny.png", width = "100px", height = "100px"))
)<- function(input, output, session) {
server observe(addScrollAnim(session, 'shinyLogo', 'bounceInRight'))
}shinyApp(ui, server)