initStore {shinyStorePlus} | R Documentation |
Included package scripts
Description
Include Dexie and the package script in the header
Usage
initStore(src = c("browser", "rpkg", "all"), rpkg.api.key)
Arguments
src |
scripts to include |
rpkg.api.key |
API key obtained from rpkg.net to use if src = "rpkg" or "all" |
Details
To unlock the "rpkg" or "all" functionality, you'll need to obtain a FREE API key from https://api.rpkg.net
However, before requesting your API key, it's recommended to do an initial deployment of your app.
This is because the API key generation process requires you to provide the link to your Shiny app.
Value
Initialize the storage by including scripts necessary for the persistent storage handling
Note
Choices for "src":
"browser" - include only scripts relevant for storing data within browser
"rpkg" - include scripts relevant for storing app views, likes and followers in rpkg.net
"all" - include all scripts
Examples
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)
}
[Package shinyStorePlus version 1.6 Index]