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.