small R package to add the snake game as a loader in a shiny app
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
R
man
readme
.Rbuildignore
.gitignore
DESCRIPTION
LICENSE
NAMESPACE
README.md
snakeLoadR.Rproj

README.md

🐍 Snake Loading Screen 🐍

A single function R package to add the snake game to a shiny app while long running output is recalculating. I did not write the snake game itself; the game code came from Gamkedo .

Install

devtools::install_github("AdamSpannbauer/snakeLoadR")

Example Output

Usage

See this repo for code used to make app in gif.

Minimal Shiny App Using snakeLoadR

library(shiny)
library(snakeLoadR)

shinyApp(
  shinyUI(
    fluidPage(
      fluidRow(
        column(width=10, offset=1, algin="left",
               actionButton("my_button", "Start Fake 30 Second Job"),
               uiOutput("my_output")
        )
      ),
      snakeLoadR::snake_loader(outputId = "my_output",
                               header = "Play Snake while you wait!",
                               controls = TRUE)
    )
  ),
  shinyServer(function(input, output) {
    output$my_output <- renderUI({
      if(input$my_button != 0) Sys.sleep(30)
      HTML(paste0("<h3>Fake job completed <code>", input$my_button,"</code> times!</h3>"))
    })
  })
)