Shinylive Aspectos esenciales de Python - Hoja de trucos

Guía rápida de referencia para aplicaciones Shiny sin servidor con Python

Consejos esenciales, comandos y mejores prácticas para la creación, despliegue y resolución de problemas de aplicaciones Shinylive Python.

Herramientas
Autor/a
Afiliación
Fecha de publicación

22 de marzo de 2025

Palabras clave

Shinylive Python, Shiny Python sin servidor, Pyodide Shiny, Shiny Python

Shinylive Instalación y despliegue de Python

Instalación desde PyPI

Instala la última versión estable de Shinylive Python:

pip install shinylive

Instalación desde GitHub

Para instalar la versión de desarrollo:

pip install git+https://github.com/posit-dev/py-shinylive.git

Exportar e implementar tu aplicación

Exportar tu aplicación Shiny como una página web estática:

shinylive export my_app_dir my_site_dir

Vista previa local:

python3 -m http.server --directory my_site_dir 8000

Acceso en: http://localhost:8000

Tutorial detallado sobre instalación e implementación



Crear aplicaciones básicas de Python con Shinylive

Ejemplo de aplicación mínima Shinylive

from shiny import App, ui, render

app_ui = ui.page_fluid(
    ui.input_slider("n", "N", 0, 100, 40),
    ui.output_text_verbatim("result")
)

def server(input, output, session):
    @output
    @render.text
    def result():
        return f"You selected {input.n()}"

app = App(app_ui, server)

Exportar y previsualizar

shinylive export my_app my_site
python3 -m http.server --directory my_site

Guía detallada para crear una aplicación básica

Consejos de integración de Quarto para aplicaciones Python

Instalación de la extensión Quarto Shinylive

Desde el terminal dentro de tu proyecto Quarto:

quarto add quarto-ext/shinylive

Configuración YAML para Shinylive

En su documento .qmd:

---
format: html
filters:
  - shinylive
---

Incrustación de aplicaciones en Quarto

```{shinylive-python}
#| standalone: true
from shiny import App, render, ui

app_ui = ui.page_fluid(
    ui.input_slider("n", "Number", 0, 10, 5),
    ui.output_text("out")
)

def server(input, output, session):
    @output
    @render.text
    def out():
        return f"Square of {input.n()} is {input.n()**2}"

app = App(app_ui, server)
```

Guía detallada de integración de Quarto

#| '!! shinylive warning !!': |
#|   shinylive does not work in self-contained HTML documents.
#|   Please set `embed-resources: false` in your metadata.
#| standalone: true
#| viewerHeight: 300
from shiny import App, render, ui

app_ui = ui.page_fluid(
    ui.input_slider("n", "Number", 0, 10, 5),
    ui.output_text("out")
)

def server(input, output, session):
    @output
    @render.text
    def out():
        return f"Square of {input.n()} is {input.n()**2}"

app = App(app_ui, server)

Solución de problemas comunes

La aplicación no se carga

  • Asegúrate de que la extensión Shinylive y las dependencias estén instaladas correctamente.
  • Verificar la ruta de exportación y los activos estáticos.

Paquete Python que falta

Si falta un paquete:

import micropip
await micropip.install("pandas")

Compatibilidad con navegadores

  • Utiliza un navegador moderno como Chrome, Firefox o Edge.
  • Comprueba los registros de la consola del navegador (F12) para obtener mensajes de error detallados.

Guía avanzada de resolución de problemas

Lecturas adicionales


Explorar más artículos

Nota

Aquí hay más artículos de la misma categoría para ayudarte a profundizar en el tema.

placeholder

placeholder
No hay resultados
Volver arriba

Reutilización

Cómo citar

BibTeX
@online{kassambara2025,
  author = {Kassambara, Alboukadel},
  title = {Shinylive Aspectos esenciales de Python - Hoja de trucos},
  date = {2025-03-22},
  url = {https://www.datanovia.com/es/learn/interactive/cheatsheets/shinylive-essentials-python.html},
  langid = {es}
}
Por favor, cita este trabajo como:
Kassambara, Alboukadel. 2025. “Shinylive Aspectos esenciales de Python - Hoja de trucos.” March 22, 2025. https://www.datanovia.com/es/learn/interactive/cheatsheets/shinylive-essentials-python.html.