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.
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.