Shinylive Einrichten & Bereitstellen
Installation
- Von CRAN:
install.packages("shinylive")- Von GitHub aus (empfohlen):
pak::pak("posit-dev/r-shinylive")Installierte Version prüfen:
shinylive::assets_info()Exportieren und Vorschau einer Shinylive App
Exportieren Sie Ihre Shiny App als Shinylive statische Webseite:
shinylive::export("myapp", "site")Vorschau lokal:
httpuv::runStaticServer("site")Erstellen einer einfachen Shinylive App
Beispiel: Hallo Shiny
Erstellen von app.R:
library(shiny)
ui <- fluidPage(
  sliderInput("bins", "Number of bins:", 1, 50, 30),
  plotOutput("distPlot")
)
server <- function(input, output) {
  output$distPlot <- renderPlot({
    x <- faithful$waiting
    bins <- seq(min(x), max(x), length.out = input$bins + 1)
    hist(x, breaks = bins, col = "skyblue", border = "white")
  })
}
shinyApp(ui, server)Export und Vorschau:
shinylive::export(".", "site")
httpuv::runStaticServer("site")Shinylive in Quarto Dokumente einbetten
Quarto-Erweiterung installieren
quarto add quarto-ext/shinyliveAktivieren im YAML-Header:
---
filters:
  - shinylive
---App direkt in Quarto einbetten
```{shinylive-r}
#| standalone: true
library(shiny)
ui <- fluidPage(
  sliderInput("bins", "Number of bins:", 1, 50, 30),
  plotOutput("distPlot")
)
server <- function(input, output) {
  output$distPlot <- renderPlot({
    hist(faithful$waiting, breaks = input$bins)
  })
}
shinyApp(ui, server)
```#| '!! shinylive warning !!': |
#|   shinylive does not work in self-contained HTML documents.
#|   Please set `embed-resources: false` in your metadata.
#| standalone: true
#| viewerHeight: 650
library(shiny)
ui <- fluidPage(
  sliderInput("bins", "Number of bins:", 1, 50, 30),
  plotOutput("distPlot")
)
server <- function(input, output) {
  output$distPlot <- renderPlot({
    hist(faithful$waiting, breaks = input$bins)
  })
}
shinyApp(ui, server)Tipps zur Fehlerbehebung und Anpassung
Häufige Probleme
- Fehlende Pakete:
- Versteckte Paketinstallation hinzufügen:
 
if (FALSE) {
  library(hidden_package)
}- Langsames Starten:
- Begrenzen Sie App-Abhängigkeiten für schnelleres Laden.
 
- Verwaltung von Assets:
Lokalen Cache prüfen:
shinylive::assets_info()Alte Assets bereinigen:
shinylive::assets_cleanup()Mehrere Apps
Mehrere Anwendungen effizient exportieren:
shinylive::export("myapp1", "site", subdir = "app1")
shinylive::export("myapp2", "site", subdir = "app2")Mehrere Anwendungen bereitstellen:
httpuv::runStaticServer("site")Weiterführende Literatur
Weitere Artikel erkunden
Hier finden Sie weitere Artikel aus derselben Kategorie, die Ihnen helfen, tiefer in das Thema einzutauchen.
Wiederverwendung
Zitat
@online{kassambara2025,
  author = {Kassambara, Alboukadel},
  title = {Shinylive Grundlagen für R - Überprüfungsblatt},
  date = {2025-03-22},
  url = {https://www.datanovia.com/de/learn/interactive/cheatsheets/shinylive-essentials-r.html},
  langid = {de}
}
