Easily create alerts, notifications, tooltips and loading screens in Shiny
# Install release version from CRAN
install.packages("standby")
# Install development version from GitHub
# install.packages("devtools")
devtools::install_github("rsquaredacademy/standby")To use spinners/loaders from standby in your Shiny application, include the following in the UI part of the app:
use*
functions (useSpinkit() in the below example).spinkit() in the below example).library(shiny)
library(standby)
ui <- fluidPage(
  standby::useSpinkit(), # include dependencies
  fluidRow(
    standby::spinkit(plotOutput("plot1")), # wrap output inside loader
    actionButton("render", "Render")
  )
)
server <- function(input, output, session) {
    output$plot1 <- renderPlot({
      input$render
      Sys.sleep(3)
      hist(mtcars$mpg)
    })
}
shinyApp(ui, server)The below table displays the dependency and rendering functions along with references:
| Index | Dependency | Render | Reference | 
|---|---|---|---|
| 1 | useThreeDots() | threeDots() | Three Dots | 
| 2 | useSpinkit() | spinkit() | SpinKit | 
| 3 | useVizLoad() | vizLoad() | Loading Visualization | 
| 4 | useSpinners() | spinners() | Spinners | 
| 5 | useLoaders() | loaders() | Loaders | 
To use alerts or notifications from buzz in your Shiny application, follow the below steps:
use* functions
(useToast() in the below example).toast() in the
below example).library(shiny)
library(standby)
ui <- fluidPage(
  useBootBox(), # include dependencies
  actionButton(inputId = "notify",
               label   = "Show Notification")
)
server <- function(input, output, session) {
  observeEvent(input$pnotify, {
    bootBox(class = "rubberBand") # display the alert
  })
}
shinyApp(ui, server)The below table displays the dependency and rendering functions along with references:
| Index | Dependency | Render | Reference | 
|---|---|---|---|
| 1 | useAlertify() | alertify_alert() | Alertify | 
| 2 | useAlertify() | alertify_notify() | Alertify | 
| 3 | useBootBox() | bootBox() | BootBox | 
| 4 | useMicroTip() | microTip() | MicroTip | 
| 5 | useNS() | notice() | Notification Styles | 
| 6 | useNotify() | notify() | PNotify | 
| 7 | useTingle() | tingle() | Tingle | 
| 8 | useToast() | toast() | iziToast | 
If you encounter a bug, please file a minimal reproducible example using reprex on github. For questions and clarifications, use StackOverflow.
Please note that the standby project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.