# \donttest{
library(shiny)
library(shinyStorePlus)
if (interactive()) {
ui <- shiny::fluidPage(
# initialize stores
initStore(),
titlePanel("Sample
shinyStorePlus Init Inputs"),
sidebarLayout(
sidebarPanel(
sliderInput("nextgenshinyapps1",
"Number of bins:",
min = 1,
max = 200,
value = 150
),
textInput(
"caption",
"simple caption:",
"summary, try editing"
),
numericInput("obs",
"sample observations:",
10,
min = 1, max = 100
)
),
mainPanel(
plotOutput("distPlot")
)
)
)
server <- function(input, output, session) {
output$distPlot <- renderPlot({
x <- faithful[, 2]
bins <- seq(min(x),
max(x),
length.out =
input$nextgenshinyapps1 + 1
)
hist(x,
breaks = bins,
col = "blue",
border = "gray"
)
})
}
shiny::shinyApp(ui = ui, server = server)
}
# Example app that stores App user views, likes and followers
library(shiny)
library(shinyStorePlus)
if (interactive()) {
ui <- fluidPage(
titlePanel("Simplified shiny app storage of views, likes and followers"),
initStore("all",rpkg.api.key =
"c20c5eead7714c119dd3f20bd249a388e72db2aa0f9305d0380b683a37c5296a"),
# get API key from https://api.rpkg.net
h2("Save App Views"),hr(),
viewsBox("viewsshow","loading views..."),
h2("Save App Likes, and allow user to Like!"),hr(),
lfButton("liket",suffix="likes"),
h2("Save App Followers, and allow user to Follow!"),hr(),
lfButton("followt",suffix="followers"),
hr(),p(p("Like or Follow and Refresh the page -
the values are saved and the views are incremented."))
)
server <- function(input, output, session) {
# set up views, likes and follows, leave as
# NULL if you don't need tracking for either
# in this case, we leave followID as NULL
# since we don't need to use that
setupRPKG(
viewsID = "viewsshow",
likesID = "liket",
followID = "followt"
)
}
shinyApp(ui = ui, server = server)
}
# }
Run the code above in your browser using DataLab