Essentiels de Shinylive pour R - Fiche de contrôle

Guide rapide pour la création et le déploiement d’applications Shinylive en R

Commandes essentielles, exemples et conseils de dépannage pour construire et déployer des applications R Shinylive entièrement dans le navigateur.

Outils
Auteur·rice
Affiliation
Date de publication

22 mars 2025

Mots clés

Shinylive, Shiny R, interactif R, WebAssembly, Shiny sans serveur

Installation du logiciel et déploiement de Shinylive

Installation du logiciel

  • Depuis le CRAN:
install.packages("shinylive")
  • Depuis GitHub (recommandé):
pak::pak("posit-dev/r-shinylive")

Vérifier la version installée:

shinylive::assets_info()

Exporter et prévisualiser une application Shinylive

Exporter votre application Shiny en tant que page web statique Shinylive:

shinylive::export("myapp", "site")

Prévisualisation locale:

httpuv::runStaticServer("site")

In-depth tutorial



Créer une application Shinylive de base

Exemple : Bonjour Shiny

Créer 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)

Exportation et prévisualisation:

shinylive::export(".", "site")
httpuv::runStaticServer("site")

Detailed tutorial

Intégrer Shinylive dans les documents Quarto

Installer l’extension Quarto

quarto add quarto-ext/shinylive

Activer dans l’en-tête YAML:

---
filters:
  - shinylive
---

Intégrer l’application directement dans Quarto

```{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)
```

Full guide

#| '!! 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)

Conseils de dépannage et de personnalisation

Problèmes courants

  • Paquets manquants:
    • Ajouter l’installation de paquets cachés:
if (FALSE) {
  library(hidden_package)
}
  • Démarrage lent:
    • Limiter les dépendances de l’application pour un chargement plus rapide.
  • Gestion des actifs:

Vérifier le cache local:

shinylive::assets_info()

Nettoyer les anciens actifs:

shinylive::assets_cleanup()

Applications multiples

Exporter plusieurs applications efficacement:

shinylive::export("myapp1", "site", subdir = "app1")
shinylive::export("myapp2", "site", subdir = "app2")

Servir plusieurs applications:

httpuv::runStaticServer("site")

Advanced tips

Plus d’informations


Explorer d’autres articles

Note

Voici d’autres articles de la même catégorie pour vous aider à approfondir le sujet.

placeholder

placeholder
Aucun article correspondant
Retour au sommet

Réutilisation

Citation

BibTeX
@online{kassambara2025,
  author = {Kassambara, Alboukadel},
  title = {Essentiels de Shinylive pour R - Fiche de contrôle},
  date = {2025-03-22},
  url = {https://www.datanovia.com/fr/learn/interactive/cheatsheets/shinylive-essentials-r.html},
  langid = {fr}
}
Veuillez citer ce travail comme suit :
Kassambara, Alboukadel. 2025. “Essentiels de Shinylive pour R - Fiche de contrôle.” March 22, 2025. https://www.datanovia.com/fr/learn/interactive/cheatsheets/shinylive-essentials-r.html.